main#content {
    float: right;
    width: calc(100% - var(--menu-width) - 145px);
    max-width: 100%;
    margin-top: 30px;
    margin-right: 10px;
    margin-bottom: 10px;
}

/* Стили для хлебных крошек */
.breadcrumbs {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 20px;
    font-size: 0.9rem;
    color: #718096;
    padding: 10px 0;
    border-bottom: 1px solid #e2e8f0;
}

.breadcrumbs a {
    color: #7b2ff2;
    text-decoration: none;
    transition: color 0.2s ease;
}

.breadcrumbs a:hover {
    text-decoration: underline;
    color: #5a1fd9;
}

.breadcrumbs i {
    color: #a0aec0;
    font-size: 0.8rem;
}

.breadcrumbs span {
    color: #2d3748;
    font-weight: 500;
}

@media (max-width: 768px) {
    .breadcrumbs {
        font-size: 0.8rem;
        gap: 6px;
        padding: 17px 25px;
        flex-wrap: wrap;
    }
}

div#freelance-banner-header {
    font-weight: bold;
    font-size: 30px;
    margin-bottom: 20px;
}

div#freelance-banner-column1 {
    float: left;
}

div#freelance-banner-column2 {}

.frilace-banner-column {
    width: 50%;
    display: inline-block;
    margin-bottom: 15px;
}

.frilace-banner-column-header {
    font-size: 20px;
}

button#tojoinfreelance {
    width: 270px;
    font-size: 18px;
    font-family: var(--font-family);
    font-weight: bold;
    color: white;
    padding: 10px;
    box-sizing: border-box;
    border-radius: 10px;
    border: none;
    background-color: RGB(38, 178, 38);
    cursor: pointer;
}

div#modalregist-parent {}

div#modalregist {
    overflow-y: hidden;
    position: absolute;
    background-color: white;
    border-radius: 15px;
    width: calc(var(--display-width) - 300px);
    max-width: 550px;
    max-height: calc(100% - 40px);
    padding: 15px 25px;
    height: auto;
    box-sizing: border-box;
    top: 50%;
    left:50%;
    transform: translate(-50%, -50%);
}

@media screen and (max-height: 800px) {
	#modalregist {
		height: calc(100% - 40px);
	}
}

#modalregist input {
    display: inline-block;
    width: 100%;
    font-size: var(--font-main);
    border-radius: 4px;
    border: 1px solid #aaa;
    background-color: var(--color-background-input);
    padding: 5px;
    box-sizing: border-box;
    margin-bottom: 15px;
}

#modalregist input[name='registname'], #modalregist input[name='registsurname'] {
    width: calc(50% - 11px);
}

#modalregist input[name='registname'] {
    margin-right: 16px;
}

svg#closemodalregist {
    cursor: pointer;
    display: inline-block;
    position: absolute;
    width: 25px;
    height: 25px;
    padding: 0;
    margin: 0;
    border: none;
    fill: #6b606b;
    top: 10px;
    right: 10px;
}
div#entereanceloginheader {
    display: block;
    font-size: 28px;
    color: white;
    line-height: 1.2;
    text-align: center;
    padding-bottom: 49px;
    font-weight: bold;
}

#modalregist #entereanceloginheader {
    margin: 10px 0 25px;
    padding: 0;
    height: 35px;
    line-height: 35px;
    color: black;
}

div#modalregistform {
    display: flex;
    justify-content: center;
    align-items: center;
    height: auto;
    max-height: calc(100% - 60px);
    overflow-y: hidden;
    overflow-x: hidden;
    width: 100%;
    box-sizing: border-box;
}

#toenter, #toregist, #toregistsend, #tonextstep {
    width: 100%;
    font-size: 18px;
    font-family: var(--font-family);
    font-weight: bold;
    color: white;
    padding: 10px;
    box-sizing: border-box;
    border-radius: 10px;
    border: none;
    background-color: var(--color-main);
    cursor: pointer;
}

#toregist, #toregistsend, #tonextstep {
    background-color: RGB(38, 178, 38);
}

#registbirthday {
    display: flex;
    justify-content: space-between;
}

#modalregist select {
    background-color: white;
    padding: 10px;
    display: inline-block;
    width: 100%;
    margin-bottom: 15px;
    font-size: var(--font-main);
    cursor: pointer;
    box-sizing: border-box;
    border: none;
    border-radius: 4px;
    background-color: var(--color-background-input);
}

#registbirthday .select2-container {
    width: calc(100%/3 - 10px) !important;
}

#modalregist form>div>span, #modalregist form>div>label[for='region'], #modalregist form>div>label[for='city'], #modalregist form>div>label[for='school'], #modalregist .acceptpolicy {
    display: inline-block;
    width: 100%;
    text-align: left;
    /* padding-left: 10px; */
    font-size: 14px;
    margin-top: 10px;
    margin-bottom: 7px;
}


#modalregist label[for='registgendermale'], #modalregist label[for='registgenderfemale'] {
    float: left;
    /* margin-left: 10px; */
    font-size: 16px;
    margin-right: 15px;
    margin-bottom: 15px;
    width: auto;
}

div#modalregist-parent {
    display: none;
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .4);
    z-index: 10000;
}

div#modalenter {
    display: none;
}

div#registstep-1 {
    display: inline-block;
    margin-bottom: 15px;
}

#modalregistform form {
    width: 100%;
    height: auto;
    overflow-y: auto;
    overflow-x: hidden;
}

#modalregist input[name='registemail'] {
    margin-bottom: 5px;
}

span#openenterform-parent {
    margin-top: 12px;
    display: inline-block;
    width: 100%;
    text-align: left;
    font-size: 15px;
}

span#openenterform {
    font-weight: bold;
    color: var(--color-main);
    cursor: pointer;
}

span#forgetpassword {
    display: inline-block;
    margin-top: 15px;
    margin-bottom: 15px;
    font-size: 16px;
    text-align: right;
    width: 100%;
    cursor: pointer;
}

#modalregist-parent label {
    font-size: 15px;
    width: 100%;
    display: inline-block;
    text-align: left;
    margin-bottom: 8px;
}

button#tosendpassword {
    width: 100%;
    font-size: 14px;
    font-family: var(--font-family);
    font-weight: bold;
    color: white;
    padding: 10px;
    box-sizing: border-box;
    border-radius: 10px;
    border: none;
    background-color: rgb(38, 178, 38);
    cursor: pointer;
    margin-top: 10px;
}

#freelance-menu-parent {
    margin-top: 10px;
    display: inline-block;
    float: left;
    width: calc(var(--menu-width) + 105px);
    margin-left: 10px;
    height: calc(var(--display-height) - var(--header-height) - 120px);
    max-height: 900px;
    overflow-y: auto;
    overflow-x: hidden;
    padding-top: 10px;
    position: sticky;
    top: 30px;
}

div#freelance-usermenu, #freelance-menu-main {
    width: calc(100% - 20px);
    margin-left: 10px;
    display: inline-block;
    float: left;
    background-color: white;
    border-radius: 15px;
    padding: 15px;
    box-sizing: border-box;
    height: auto;
    box-shadow: 0 0 10px 3px rgb(221 221 221);
    margin-bottom: 20px;
}

div#freelance-usermenu-profile {
    display: inline-block;
    cursor: pointer;
}

div#freelance-usermenu-profile span:nth-child(2) {
    display: inline-block;
    width: calc(100% - 75px);
    text-align: left;
    margin-left: 15px;
    font-weight: bold;
    line-height: 27px;
    margin-bottom: 4px;
    font-size: 16px;
}

#freelance-usermenu-profile img {
    border-radius: 100%;
    width: 60px;
    display: inline-block;
    float: left;
}

.profileblock {
    display: inline-block;
    /* border-radius: 15px; */
    /* padding: 15px; */
    box-sizing: border-box;
    background-color: white;
    position: relative;
    /* box-shadow: 0 0 10px 3px rgb(221 221 221); */
    margin-bottom: 15px;
}

img.profileblock-info-avatar {
    float: left;
    width: 120px;
    border-radius: 100%;
    cursor: pointer;
}

span.profileblock-info-name {
    line-height: 35px;
    display: inline-block;
    width: calc(100% - 155px);
    float: right;
    text-align: left;
    font-weight: bold;
    font-size: 21px;
    margin-bottom: 3px;
}

span.profileblock-info-onlinestatus, .profileblock-info-cityage {
    display: inline-block;
    float: right;
    width: calc(100% - 155px);
    text-align: left;
    margin-bottom: 12px;
    height: 19px;
    line-height: 19px;
    color: dimgray;
    font-weight: 500;
}

div#cropbottomblock, div#cropleftblock, div#croprightblock {
    position: absolute;
    background-color: rgba(0,0,0,.5);
}

div#croprightblock {
    right: 0;
}

div#croptopblock {
    position: absolute;
    top: 0;
    background-color: rgba(0,0,0,.5);
}

div#cropbottomblock {
    bottom: 0;
}

div#cropleftblock {
    left: 0;
}

div#cropavatarcircle {
    width: 100%;
    height: 100%;
    border: 3px solid #fff;
    box-sizing: border-box;
    border-radius: 100%;
    position: absolute;
    top: 0;
}

div#crop-contain {
    position: relative;
    display: flex;
    max-width: calc(var(--display-width) - 140px);
    max-height: calc(var(--display-height) - 140px)
}

canvas#cropframe {
    position: absolute;
    top: 0;
    left: 0;
}

#aboutuseroptions, #userheaderoptions {
    float: right;
    width: calc(var(--display-width) - var(--menu-width) - var(--tools-width) - 140px);
    z-index: 50;
}

#openuserheaderoptions {
    display: inline-block;
    background: url(/icons/options.png);
    background-size: 25px;
    height: 25px;
    width: 25px;
    position: absolute;
    top: 5px;
    right: 7px;
    cursor: pointer;
}

#userheaderoptions-content {
    display: none;
    width: auto;
    position: absolute;
    right: 7px;
    top: 30px;
    z-index: 50;
    color: var(--color-menu);
    padding: 7px 15px;
    border-radius: 9px;
    -webkit-box-shadow: 0 5px 10px 2px rgb(0 0 0 / 20%);
    -moz-box-shadow: 0 5px 10px 2px rgba(0,0,0,.2);
    box-shadow: 0 5px 10px 2px rgb(0 0 0 / 20%);
}

#headerinfo, #userheaderoptions-content {
    background-color: #fff;
    border: 1px solid var(--color-background-input);
}

#userheaderoptions-content>ul, .newsoptions-content>ul {
    margin: 0;
    padding: 0;
}

#userheaderoptions:hover #userheaderoptions-content {
    display: block
}

#userheaderoptions-content>ul>li:hover {
    background-color: #f5e4f4
}

#userheaderoptions-content>ul>li {
    list-style: none;
    padding: 7px;
    font-size: var(--font-notice);
    cursor: pointer;
    border-radius: 4px;
}

textarea#changeuserdescriptiontextarea {
    margin-top: 15px;
    width: calc(100% - 40px);
    box-sizing: border-box;
    float: left;
    resize: none;
    border: none;
    border-radius: 15px;
    background-color: #f9f9f9;
    padding: 12px;
    display: inline-block;
}

button#tochangeuserdescription {
    display: inline-block;
    float: right;
    margin-top: 20px;
    border: none;
    width: 25px;
    height: 25px;
    background-color: initial;
    background-image: url(/icons/save.png);
    background-size: 100%;
    cursor: pointer;
}

div#profileblock-info-description {
    display: inline-block;
    text-align: left;
    padding: 5px 15px;
    box-sizing: border-box;
}

div#profileblock-info-description:empty {
    display: none;
}

div#profileblock-interests {
    margin-bottom: 7px;
    display: inline-block;
    width: 235px;
    box-sizing: border-box;
    float: left;
    padding: 10px 10px 5px;
    background-color: #fff;
    border-radius: 10px;
    position: relative;
    box-shadow: 0 0 10px 3px rgb(221 221 221);
    text-align: left;
}

button#userinterestsclose, button#userinterestssave {
    position: absolute;
    z-index: 25;
    top: 15px;
    height: 25px;
    width: 25px;
    padding: 0;
    border: 0;
    background-size: 25px 25px;
    background-color: #fff;
    cursor: pointer;
}
button#userinterestsclose {
    background-image: url(/icons/close.png);
}
button#userinterestsclose {
    right: 10px;
}
button#userinterestssave {
    background-image: url(/icons/save.png);
    right: 40px;
}
div#userinterestsheader {
    color: var(--color-addit);
    font-size: 16px;
    padding-top: 10px;
    padding-bottom: 10px;
    margin-bottom: 12px;
    text-align: left;
    box-sizing: border-box;
    border-bottom: 2px solid var(--color-addit);
    text-overflow: ellipsis;
    font-weight: bold;
}
input#searcheditinterest {
    border-radius: 4px;
    border: 1.5px solid var(--color-background-input);
    width: 100%;
    margin-bottom: 12px;
    box-sizing: border-box;
    padding: 5px 10px;
    font-size: calc(var(--font-notice) - 2px);
    height: 26px;
}
div#editinterests {
    display: none;
    max-height: 500px;
    overflow-y: auto;
}
.userintereststitle {
    display: inline-block;
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 5px;
    width: 100%;
}
#editinterests .userintereststitle {
    display: inline-block !important;
}
.edituserinterests {
    display: inline-block;
    box-sizing: border-box;
    width: calc(100%/3 - 5px);
    overflow: hidden;
    margin-bottom: 10px;
    margin-left: 5px;
    white-space: nowrap;
    text-overflow: ellipsis;
    text-align: center;
    color: #213021;
    position: relative;
    cursor: pointer;
    font-size: calc(var(--font-notice) - 2px);
    float: left;
}
.adduserinterests {
    opacity: .6;
}

.userinterestssubtitle {
    font-size: 13px;
    display: inline-block;
    margin-bottom: 9px;
}

#editinterests .userinterestssubtitle {
    display: inline-block !important;
}

button#userinterestsedit {
    position: absolute;
    z-index: 25;
    height: 25px;
    width: 25px;
    padding: 0;
    border: 0;
    background-size: 25px 25px;
    background-color: #fff;
    cursor: pointer;
}

button#userinterestsedit {
    right: 10px;
    top: 15px;
    background-image: url(/icons/edit.png);
}

.userinterests-card {
    padding: 5px;
    display: inline-block;
    box-sizing: border-box;
    width: calc(100%/3 - 5px);
    overflow: hidden;
    margin-bottom: 10px;
    margin-left: 5px;
    /* white-space: nowrap; */
    text-overflow: ellipsis;
    text-align: center;
    color: #213021;
    position: relative;
    cursor: pointer;
    font-size: calc(var(--font-notice) - 2px);
    /* float: left; */
    vertical-align: top;
}
.userinterests-card {
    /* height: 83px; */
}
.userinterests-card>span {
    display: inline-block;
    width: 100%;
    /* height: 30px; */
    overflow: hidden;
    text-overflow: ellipsis;
}
.userinterests-card>span>span:first-child {
    font-weight: 700;
}

span.checkmark {
    position: absolute;
    width: 25px;
    height: 25px;
    border-radius: 100%;
    background-color: var(--color-addit);
    top: 0;
    right: 0;
    background-image: url(/icons/applywhite.png);
    background-size: 25px 25px;
}
.adduserinterests>.checkmark {
    display: none;
}
div#contentrightblocks {
    width: calc(100% - 245px);
    display: inline-block;
    float: right;
}
.achieveelem, .addachievementelem {
    width: calc(100%/4 - 75px/4);
    margin-left: 15px;
    display: inline-block;
    float: left;
    text-align: center;
    margin-bottom: 15px;
    cursor: pointer;
    height: auto;
    line-height: normal;
}
.achieveelem>img {
    margin-bottom: 10px;
    border-radius: 4px;
    aspect-ratio: 3/2;
    object-fit: cover;
    object-position: center;
    width: 100%;
}
.achieveelem>span, .addachievementelem>span {
    display: inline-block;
    width: 100%;
    font-size: var(--font-main);
    line-height: normal;
    color: #000;
}
.fullachievementcard {
    display: none;
    flex-direction: row;
    flex-wrap: wrap;
    padding-top: 5px;
    height: calc(100% - var(--font-subtitle)*2 - 15px);
    box-sizing: border-box;
    position: relative;
}
.openachievementoptions, .openportfoliooptions {
    display: inline-block;
    background: url(/icons/options.png);
    background-size: 25px;
    height: 25px;
    width: 25px;
    position: absolute;
    right: 20px;
    cursor: pointer;
    z-index: 999;
}

.achievementoptions-content>ul>li, .portfoliooptions-content>ul>li {
    list-style: none;
    padding: 7px;
    font-size: var(--font-notice);
    cursor: pointer;
    border-radius: 4px
}

.achievementoptions:hover .achievementoptions-content, .portfoliooptions:hover .portfoliooptions-content {
    display: block
}

.achievementoptions-content, .exhibitoptions-content, .petoptions-content, .portfoliooptions-content {
    display: none;
    width: auto;
    position: absolute;
    right: 7px;
    top: 27px;
    border: 1px solid var(--color-background-input);
    z-index: 50;
    background-color: #fff;
    color: var(--color-menu);
    padding: 7px 15px;
    border-radius: 9px;
    -webkit-box-shadow: 0 5px 10px 2px rgb(0 0 0 / 20%);
    -moz-box-shadow: 0 5px 10px 2px rgba(0,0,0,.2);
    box-shadow: 0 5px 10px 2px rgb(0 0 0 / 20%);
}

.achievementoptions-content>ul, .portfoliooptions-content>ul {
    margin: 0;
    padding: 0;
}

.achievementoptions-content>ul>li, .portfoliooptions-content>ul>li {
    list-style: none;
    padding: 7px;
    font-size: var(--font-notice);
    cursor: pointer;
    border-radius: 4px;
}
.achievementoptions-content>ul>li:hover, .portfoliooptions-content>ul>li:hover {
    background-color: #f5e4f4;
}
.returntoallachievements {
    padding-bottom: 25px;
    box-sizing: border-box;
    line-height: 20px;
    text-align: left;
    padding-left: 20px;
    font-size: 14px;
    cursor: pointer;
}
.arrow-left {
    width: 11.14px;
    height: 11.14px;
    border-top: 3px solid var(--color-addit);
    border-right: 3px solid var(--color-addit);
    transform: rotate(-135deg);
    display: inline-block;
    margin-right: 10px;
}
.fullachievementcardimg {
    display: inline-block;
    width: 50%;
    position: relative;
    height: auto;
    flex-direction: column;
    flex-grow: 2;
}
.fullachievementcardimgtempdiv {
    height: 100%;
    width: 100%;
    display: inline-block;
    position: relative;
    padding-left: 20px;
    box-sizing: border-box;
    text-align: center;
}

.fullachievementcardimgtempdiv>img {
    width: calc(100% - 60px);
    display: inline-block;
}

.fullachievementcardinfo {
    display: inline-block;
    width: 50%;
    margin-bottom: 20px;
}

.fullachievementcardinfo>span {
    display: inline-block;
    width: 100%;
    padding-left: 15px;
    box-sizing: border-box;
    font-size: var(--font-main);
    text-align: left;
    margin-bottom: 7px;
    color: var(--color-gray-dark);
}

.fullachievementcardinfo>span:nth-child(1) {
    display: inline-block;
    width: 100%;
    padding-left: 15px;
    padding-top: 10px;
    box-sizing: border-box;
    font-size: var(--font-title);
    text-align: left;
    font-weight: 700;
    margin-bottom: 10px;
    color: #000;
}
.achieveaddingbuttons, .achievesavingbuttons {
    padding: 20px;
    height: 75px;
    box-sizing: border-box;
}
.achieveaddingbuttons button, .achievesavingbuttons button {
    cursor: pointer;
    width: calc(50% - 10px);
    height: 35px;
    color: var(--color-main);
    background-color: var(--color-main-light-100);
    border: 0;
    font-weight: 700;
    border-radius: 4px;
}
button#saveachievement, button#saveeditachievement, button#saveeditphotoachievement {
    margin-left: 20px;
}
.addachievementelem>svg {
    stroke: #000;
    aspect-ratio: 3/2;
    display: inline-block;
    margin-bottom: 10px;
}
.achieveelem>img, .addachievementelem>svg {
    width: 100%;
}

.addingachievement, .addingexhibit, .addingpet {
    display: none;
    flex-direction: row;
    flex-wrap: wrap;
    padding-top: 25px;
    height: calc(100% - var(--font-subtitle)*2 - 15px);
    box-sizing: border-box;
}

div#addachievement {
    display: none;
}

.achievementphotoedit {
    display: inline-block;
    width: 50%;
    position: relative;
    height: auto;
    flex-direction: column;
    flex-grow: 2;
}

.tempdiv {
    height: 100%;
    width: 100%;
    display: table;
    osition: relative;
    padding-left: 20px;
    box-sizing: border-box
}

.tempdiv>img {
    max-width: calc(100% - 10px);
    float: left;
    vertical-align: middle;
    margin: auto;
    display: inline-block;
    border-radius: 4px
}

#updateachievephoto {
    margin: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    cursor: pointer;
}

.achievementinfoedit, .fullachievementcardinfoedit {
    display: inline-block;
    width: 50%;
    margin-bottom: 20px;
}

.achievementinfoedit input, .achievementinfoedit select, .achievementinfoedit textarea, .fullachievementcardinfoedit input, .fullachievementcardinfoedit select, .fullachievementcardinfoedit textarea {
    width: calc(100% - 40px);
    padding: 10px;
    box-sizing: border-box;
    font-size: var(--font-notice);
    background-color: var(--color-background-input);
    border: 0;
    border-radius: 4px;
    margin: auto auto 15px;
    text-align: left;
    resize: none;
}

div#toopenuserachievements, div#toopenuserportfolio {
    display: inline-block;
    width: auto;
    float: left;
    padding-bottom: 10px;
    margin-right: 20px;
    font-weight: 700;
    cursor: pointer;
}

div#achievements {
}

div#achievementsitems {
    display: inline-block;
}

div#profileblock-achievementsportfolio-menu {
    background-color: #fff;
    padding: 10px 0px;
    padding-top: 5px;
    box-sizing: border-box;
    text-align: right;
    width: 100%;
    display: inline-block;
    height: auto;
    /* margin-bottom: 10px; */
}

div.profileblock-achievementsportfolio-menu-activeinset {
    border-bottom: 2px solid #000;
}

div#portfolio {
    display: none;
}

#noportfolio {
    margin-bottom: 15px;
    display: inline-block;
    width: 100%;
    text-align: left;
}

.addportfolioelem {
    width: calc(100%/4 - 75px/4);
    margin-left: 15px;
    display: inline-block;
    float: left;
    text-align: center;
    margin-bottom: 15px;
    cursor: pointer;
    height: auto;
    line-height: normal;
    display: none;
}
.addportfolioelem>svg {
    width: 100%;
}

.addportfolioelem>svg {
    stroke: #000;
    aspect-ratio: 3/2;
    display: inline-block;
    margin-bottom: 10px;
}

.addportfolioelem>span {
    display: inline-block;
    width: 100%;
    font-size: var(--font-main);
    line-height: normal;
    color: #000;
}

.addingportfolio {
    display: none;
}

input.addportfoliofullelemname {
    display: inline-block;
    width: 100%;
    font-size: var(--font-main);
    border-radius: 4px;
    border: 1px solid #aaa;
    background-color: var(--color-background-input);
    padding: 5px;
    box-sizing: border-box;
    margin-bottom: 15px;
}

textarea.addportfoliofullelemdesc {
    display: inline-block;
    width: 100%;
    font-size: var(--font-main);
    border-radius: 4px;
    border: 1px solid #aaa;
    background-color: var(--color-background-input);
    padding: 5px;
    box-sizing: border-box;
    margin-bottom: 15px;
    resize: none;
}

input.addportfoliofullelemdate {
    display: inline-block;
    width: 100%;
    font-size: var(--font-main);
    border-radius: 4px;
    border: 1px solid #aaa;
    background-color: var(--color-background-input);
    padding: 5px;
    box-sizing: border-box;
    margin-bottom: 15px;
    margin-top: -4px;
}

div#attaching {
    padding: 10px 0;
    box-sizing: border-box;
    display: inline-block;
    text-align: center;
}
#attachaudioportfolio, #attachdocumentsportfolio, #attachphotoportfolio, #attachvideoportfolio {
    height: 30px;
    width: 30px;
    border: 0;
    float: left;
    padding: 0;
    margin-right: 10px;
    cursor: pointer;
}
div#attaching>span>img {
    width: 30px;
    height: 30px;
}

.portfoliobuttons {
    padding: 10px 0;
    box-sizing: border-box;
}

button.tocancelportfolioitem {
    cursor: pointer;
    width: calc(50% - 10px);
    height: 35px;
    color: var(--color-main);
    background-color: var(--color-main-light-100);
    border: 0;
    font-weight: 700;
    border-radius: 4px;
}

button.tosaveportfolioitem {
    cursor: pointer;
    width: calc(50% - 10px);
    height: 35px;
    color: var(--color-main);
    background-color: var(--color-main-light-100);
    border: 0;
    font-weight: 700;
    border-radius: 4px;
    margin-left: 15px;
}
#outputMulti {
    display: inline-block;
    height: auto;
    padding: 15px 0px 0;
    box-sizing: border-box;
    background-color: #fff;
}
#outputMulti:empty {
    display: none !important;
}
#outputMulti>div {
    width: auto;
    max-width: calc(100% - 20px);
    min-width: 100px;
    height: auto;
    display: inline-block;
    float: left;
    cursor: pointer;
    margin-right: 10px;
    position: relative;
    margin-bottom: 15px;
    max-height: 100px;
}
.deleteaudio, .deletedoc, .deleteimages, .deletevideo {
    right: 0;
    position: absolute;
    height: 20px;
    width: 20px;
    z-index: 2;
}
.aud-thumbnail, .doc-thumbnail, .img-thumbnail, .video-thumbnail {
    float: left;
    opacity: .9;
    z-index: 1;
    border-radius: 4px;
}
.doc-thumbnail, .newsdoc {
    height: 50px;
    width: 100%;
    display: inline-block;
}
.aud-thumbnail, #outputMulti>div.loaditem, .img-thumbnail, .video-thumbnail {
    height: 100px;
    display: inline-block;
}
#outputMulti>div:after {
    display: table;
    clear: both;
    content: "";
}
audio.aud-thumbnail {
    height: revert;
    width: 100%;
    margin-top: 0!important;
}
.deletedoc {
    left: 40px;
    top: -5px;
}
.doc-thumbnail>img, .portfoliodoc>img {
    height: 50px;
    display: inline-block;
    margin-right: 20px;
    float: left;
}
span.docname {
    display: inline-block;
    width: calc(100% - 75px);
    margin: 0;
    float: left;
    height: 50px;
    box-sizing: border-box;
    text-align: left;
}
.docname>span:nth-child(1) {
    line-height: 30px;
    font-size: var(--font-main);
    color: #000;
    font-weight: 700;
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.docname>span:nth-child(2) {
    line-height: 20px;
    font-size: var(--font-notice);
    color: var(--color-gray-dark);
    display: block;
}

.addportfoliofullelemattention {padding: 5px 0;font-size: 14px;text-align: left;}

.miniportfoliocard {
    width: calc(100%/4 - 75px/4);
    margin-left: 15px;
    display: inline-block;
    float: left;
    text-align: center;
    margin-bottom: 15px;
    cursor: pointer;
    height: auto;
    line-height: normal;
}
.miniportfoliocard>img {
    margin-bottom: 10px;
    border-radius: 4px;
    aspect-ratio: 3/2;
    object-fit: cover;
    object-position: center;
}
.miniportfoliocard>img {
    width: 100%;
}
.miniportfoliocard>span {
    display: inline-block;
    width: 100%;
    font-size: var(--font-main);
    line-height: normal;
    color: #000;
}

.fullportfoliocard {
    display: none;
    position: relative;
}

.returntoallportfolio {
    padding-bottom: 25px;
    box-sizing: border-box;
    line-height: 20px;
    text-align: left;
    padding-left: 20px;
    font-size: 14px;
    cursor: pointer;
    margin-top: 5px;
}

span.openportfoliooptions {
    top: 3px;
}

.allportfoliophoto {
    display: none;
}

span.fullportfoliocardheader {
    display: inline-block;
    width: 100%;
    text-align: center;
    font-weight: bold;
    margin-bottom: 15px;
    font-size: 19px;
}

.portfoliocontaining>img, .portfoliocontaining>video {
    display: inline-block;
    border-radius: 4px;
    width: 100%;
}

div#row {
    display: none;
}

span.saveportfoliodecline {
    margin-top: 15px;
    display: inline-block;
    cursor: pointer;
    width: calc(50% - 10px);
    height: 35px;
    line-height: 35px;
    color: var(--color-main);
    background-color: var(--color-main-light-100);
    border: 0;
    font-weight: 700;
    border-radius: 4px;
}

span.saveportfolio {
    margin-top: 15px;
    display: inline-block;
    cursor: pointer;
    width: calc(50% - 10px);
    height: 35px;
    color: var(--color-main);
    background-color: var(--color-main-light-100);
    border: 0;
    font-weight: 700;
    border-radius: 4px;
    margin-left: 15px;
    line-height: 35px;
}

.freelanceordersinset-item {
    display: inline-block;
    width: calc(50% - 15px);
    box-sizing: border-box;
    padding: 10px 0;
    font-weight: bold;
    cursor: pointer;
}

.freelanceordersinset-item-active {
    border-bottom: 2.5px solid;
}

#freelance-menu-main li {
    list-style: none;
    text-align: left;
    font-size: 14px;
    margin-bottom: 7px;
    margin: 3px auto;
    padding: 10px 7px;
    padding-right: 30px;
    cursor: pointer;
    border-radius: 4px;
    position: relative;
}

div#freelanceordersinsets {
    margin-bottom: 35px;
}

div#freelancetaskcontent {
    background-color: white;
    padding: 20px;
    padding-bottom: 10px;
    box-sizing: border-box;
    border-radius: 15px;
    box-shadow: 0 0 10px 3px rgb(221 221 221);
    margin-bottom: 35px;
    /* display: none; */
    text-align: left;
}

input#freelancetaskname {
    display: inline-block;
    width: 100%;
    font-size: var(--font-main);
    border-radius: 15px;
    border: 1px solid #aaa;
    background-color: #fff;
    padding: 7px;
    box-sizing: border-box;
    min-height: 42px;
    padding-left: 15px;
}

textarea#freelancetaskdesc {
    display: inline-block;
    width: 100%;
    font-size: var(--font-main);
    border-radius: 15px;
    border: 1px solid #aaa;
    background-color: #fff;
    padding: 7px;
    box-sizing: border-box;
    margin-bottom: 15px;
    resize: none;
    padding-left: 15px;
}

.freelanceordersinset-item:first-child {
    margin-right: 25px;
}

div#freelancetaskpricerange span, #freelancetaskpricedeadline span {
    display: inline-block;
    width: 100%;
    text-align: left;
    font-size: 14px;
    margin-bottom: 12px;
    padding-left: 20px;
    font-weight: bold;
}

div#freelancetaskpricerange {
    /* margin-bottom: 20px; */
}

div#freelancetaskpricedeadline {
    /* margin-bottom: 20px; */
}

input[name="freelancetaskpricerange-low"], input[name="freelancetaskpricerange-high"] {
    display: inline-block;
    width: calc(50% - 10px);
    font-size: var(--font-main);
    border-radius: 15px;
    border: 1px solid #aaa;
    background-color: #fff;
    padding: 7px;
    box-sizing: border-box;
    padding-left: 15px;
    min-height: 42px;
}

input[name="freelancetaskpricerange-low"] {
    margin-right: 15px;
}

input[name="freelancetaskpricerange-low"]:after {
    content: "-";
    display: inline-block;
    width: 15px;
    height: 29px;
    vertical-align: top;
}

input[name="freelancetaskpricedeadline"] {
    display: inline-block;
    width: 100%;
    font-size: var(--font-main);
    border-radius: 15px;
    border: 1px solid #aaa;
    background-color: #fff;
    padding: 7px;
    box-sizing: border-box;
    padding-left: 15px;
    min-height: 42px;
}

#attachphoto, #attachdocuments {
    height: 30px;
    width: 30px;
    border: none;
    float: left;
    padding: 0;
    margin-right: 10px;
    cursor: pointer;
}

span#addfreelancetask {
    display: inline-block;
    /* float: right; */
    box-sizing: border-box;
    font-size: var(--font-main);
    font-weight: bold;
    padding: 15px;
    color: white;
    border: none;
    background-color: var(--color-main-light-100);
    color: var(--color-main);
    cursor: pointer;
    width: 100%;
    margin-top: 35px;
    border-radius: 15px;
    text-align: center;
    width: auto;
}

span#tochoosetaskthemes {
    display: inline-block;
    width: 100%;
    font-size: 16px;
    color: #86059c;
    margin: 15px 0 20px;
    text-align: left;
    font-weight: 700;
    cursor: pointer;
}
div#taskthemesedit-parent {
    display: none;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1000000;
    background-color: rgba(0, 0, 0, .4);
}
div#taskthemesedit {
    z-index: 10000;
    padding: 25px;
    overflow-y: auto;
    text-align: left;
    max-width: 450px;
    height: 550px;
    border-radius: 15px;
}
div#modaltaskheaderparent, div#taskthemesedit {
    position: fixed;
    top: calc(50% - 275px);
    left: calc(50% - 225px);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #fff;
    border-radius: 15px;
}
div#modalthemesheaderparent {
    width: 450px;
    height: 107px;
    padding: 17px;
    z-index: 1000000;
}
input#searchtaskthemeinput {
    border-radius: 4px;
    border: 1px solid var(--color-background-input);
    width: 100%;
    margin-bottom: 11px;
    box-sizing: border-box;
    padding: 5px 10px;
    font-size: calc(var(--font-notice) - 2px);
}


div#taskthemesedit::-webkit-scrollbar {
    width: 0;
}

.edittaskinterests, .edittaskinterestsshow {
    display: inline-block;
    box-sizing: border-box;
    width: calc(100%/4 - 5px);
    overflow: hidden;
    margin-bottom: 10px;
    margin-left: 5px;
    white-space: nowrap;
    text-overflow: ellipsis;
    text-align: center;
    color: #213021;
    position: relative;
    cursor: pointer;
    font-size: calc(var(--font-notice) - 2px);
    float: left;
}

.addtaskinterests>.checkmark {
    display: none;
}

.addtaskinterests {
    opacity: .6;
}

.edittaskinterestsshow span.checkmark {
    display: none;
}

.edittaskinterestsshow {
    width: calc(100%/8 - 5px);
}

.orderheader {
    font-size: 25px;
    font-weight: bold;
    margin-bottom: 17px;
    color: var(--color-main);
    text-align: left;
    line-height: 33px;
    cursor: pointer;
}

.order {
    display: inline-block;
    margin: auto auto 7px;
    background-color: #fff;
    padding: 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: 1px solid #f6f6f6;
    text-align: left;
    border-radius: 10px;
    cursor: pointer;
    box-shadow: 0 0 10px 3px rgb(221 221 221);
    position: relative;
}

.ordertext {
    font-size: 16px;
    line-height: 20px;
    box-sizing: border-box;
    display: inline-block;
    border: none;
    resize: none;
    width: 100%;
    margin-bottom: 20px;
    line-height: 23px;
    max-height: 69px;
    overflow: hidden;
    text-overflow: ellipsis;
}

span.orderpublicatedate, span.order-addinfo-deadline, .order-addinfo-types {
    font-size: 17px;
    color: #696969;
    display: inline-block;
    width: 100%;
    margin-bottom: 12px;
    /* cursor: pointer; */
}

.order-maininfo {
    display: inline-block;
    width: calc(70% - 20px);
    float: left;
}

.order-addinfo {
    display: inline-block;
    width: 30%;
    float: right;
}

span.order-addinfo-pricerange, span.order-addinfo-execprice {
    display: inline-block;
    width: 100%;
    font-weight: bold;
    font-size: 20px;
    margin-bottom: 12px;
}

span.order-addinfo-pricerange>span, span.orderpublicatedate>span, span.order-addinfo-deadline>span, span.order-addinfo-category>span, .order-addinfo-types>span, .order-addinfo-execprice>span {
    display: inline-block;
    width: 100%;
    font-weight: bold;
    color: black;
}

span.order-addinfo-pricerange>span:first-child, span.orderpublicatedate>span:first-child, span.order-addinfo-deadline>span:first-child, .order-addinfo-category>span:first-child, .order-addinfo-types>span:first-child, .order-addinfo-execprice>span:first-child  {
    font-weight: bold;
    font-size: 14px;
    margin-bottom: 3px;
    color: #9c9fb1;
}

.allordersphoto {
    display: none;
}

.orderscontaining>img {
    display: inline-block;
    border-radius: 4px;
    width: 100%;
}
.orderscontaining {
    position: relative;
}

.toleft, .toright {
    position: absolute;
    left: 5px;
    width: 30px;
    height: 30px;
    line-height: 30px;
    padding: 0 5px;
    font-size: var(--font-title);
    font-weight: 700;
    display: inline-block;
    z-index: 5;
    text-align: center;
    background-color: rgba(255,255,255,.6);
    cursor: pointer;
    transition: background-color 1s ease;
    color: var(--color-addit);
    box-sizing: border-box;
    top: calc(50% - 25px);
    border-radius: 100%;
}
.toleft, .toright {
    background-color: rgba(255,255,255,.6);
    color: var(--color-addit);
}
.ordersimg {
    margin-top: 10px;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    margin-bottom: 10px;
}
.toleft {
    left: 5px;
}
.toright {
    right: 5px;
    left: auto;
}
.ordersdoc {
    height: 50px;
    width: 100%;
    display: inline-block;
    margin-bottom: 7px;
}
.ordersdoc>img {
    height: 50px;
    display: inline-block;
    margin-right: 20px;
    float: left;
}


.taskinterests-view {
    display: inline-block;
    box-sizing: border-box;
    width: calc(100%/4 - 5px);
    overflow: hidden;
    margin-bottom: 10px;
    margin-left: 5px;
    white-space: nowrap;
    text-overflow: ellipsis;
    text-align: center;
    color: #213021;
    position: relative;
    cursor: pointer;
    font-size: calc(var(--font-notice) - 2px);
    float: left;
}
.taskinterests-view>span>span {
    vertical-align: middle;
}
.taskinterests-view>span>span:first-child {
    font-weight: 700;
}

.taskinterests-view-parent {
    display: inline-block;
}

.order-addinfo-category .taskinterests-view {
    width: calc(100%/2 - 5px);
}

#freelanceorder-content .ordertext {
    max-height: initial;
    height: auto;
}

div#asidealldialogs {
    max-height: calc(var(--display-height) - var(--header-height) - 136px);
    overflow-y: auto;
    margin-top: -4px;
    background-color: white;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 0 10px 3px rgb(221 221 221);
    margin-bottom: 30px;
}

.userdialog {
    padding: 10px;
    /* padding-right: 32px; */
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    border-bottom: 1px solid var(--color-gray-lightest);
    cursor: pointer;
}

span.dialoguserheader {
    display: inline-block;
    width: 100%;
    height: 60px;
    cursor: pointer;
}

.dialoguserheader img {
    height: 60px;
    width: 60px;
    border-radius: 100%;
    float: left;
    margin-right: 17px;
}

span.disalogusersn {
    float: left;
    font-size: var(--font-main);
    font-weight: bold;
    color: var(--color-main);
    display: inline-block;
    width: calc(100% - 87px);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    /* margin-bottom: 5px; */
    cursor: pointer;
    line-height: 26px;
    padding: 5px;
    text-align: left;
    white-space: nowrap;
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
}

span.lastmessage {
    display: inline-block;
    width: calc(100% - 87px);
    text-align: left;
    font-size: var(--font-notice);
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    white-space: nowrap;
    line-height: 22px;
    height: 22px;
    color: black;
}
.dialoguserheader img {
    height: 60px;
    width: 60px;
    border-radius: 100%;
    float: left;
    margin-right: 17px;
}
span.lastmessage>span.messagesender {
    margin-right: 5px;
    color: var(--color-gray-light);
    display: inline-block;
    height: 22px;
    line-height: 22px;
    vertical-align: top;
}
span.iswriting {
    display: none;
    width: calc(100% - 87px);
    text-align: left;
    font-size: var(--font-notice);
    color: var(--color-addit);
}
span.countnewmessagesbage {
    display: inline-block;
    position: absolute;
    right: 10px;
    top: calc(50% - 11px);
    height: 22px;
    width: 22px;
    line-height: 22px;
    font-size: 14px;
    border-radius: 100%;
    background-color: #0B8F1D;
    color: white;
}

div#dialogblock {
    background-color: white;
    height: calc(var(--display-height) - var(--header-height) - 120px);
    max-height: 900px !important;
    border-radius: 4px;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative;
    border-radius: 15px;
    box-shadow: 0 0 10px 3px rgb(221 221 221);
}
div#userdialog-container-1 {
    position: absolute;
    z-index: 1000;
    background: rgba(255, 255, 255, .97);
}
div#dialogheader {
    height: 72px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-bottom: 2px solid var(--color-background-input);
    position: relative;
    padding: 10px 17px;
}
#dialogheader img {
    border-radius: 100%;
    width: 48px;
    height: 48px;
    float: left;
    margin-right: 10px;
}
div#dialogheadertext {
    width: calc(100% - 93px);
    display: inline-block;
    height: 48px;
}
div#dialogheadertext a {
    float: left;
    display: block;
    width: 100%;
}
span#dialogheaderusername {
    float: left;
    font-size: var(--font-main);
    font-weight: bold;
    color: var(--color-main);
    display: inline-block;
    line-height: 28px;
    padding-left: 10px;
}
span#onlinestatustext {
    display: block;
    width: calc(100% - 20px);
    text-align: left;
    float: left;
    padding-left: 10px;
    font-size: var(--font-notice);
    color: var(--color-gray-light);
}
.dialogoptions {
    position: relative;
    display: inline-block;
    float: right;
    width: auto;
}
span.opendialogoptions {
    display: inline-block;
    background: url(/icons/options.png);
    background-size: 25px;
    height: 25px;
    width: 25px;
    position: absolute;
    top: 0;
    right: 0;
    cursor: pointer;
}
.dialogoptions-content {
    display: none;
    width: auto;
    position: absolute;
    right: 0;
    top: 25px;
    border: 1px solid var(--color-background-input);
    z-index: 50;
    background-color: white;
    color: var(--color-menu);
    padding: 7px 15px;
    border-radius: 9px;
    -webkit-box-shadow: 0px 5px 10px 2px rgb(0 0 0 / 20%);
    box-shadow: 0px 5px 10px 2px rgb(0 0 0 / 20%);
}
.dialogoptions:hover .dialogoptions-content {
    display: block;
}
.dialogoptions-content>ul {
    margin: 0;
    padding: 0;
}
.dialogoptions-content>ul>li {
    list-style: none;
    font-size: var(--font-notice);
    cursor: pointer;
    white-space: nowrap;
    margin-bottom: 3px;
    padding: 7px;
    border-radius: 4px;
}
.dialogoptions-content>ul>li:hover {
    background-color: #f5e4f4;
}
div#dialogoptionsmenu {
    display: none;
    width: 100%;
    background: white;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-bottom: 2px solid var(--color-background-input);
    position: absolute;
    top: 0;
    height: 72px;
    z-index: 1000;
}
div#dialogoptionsmenu>div {
    display: inline-block;
    vertical-align: middle;
    padding-left: 17px;
    padding-right: 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    height: 30px;
    margin-top: 20px;
}
div#dialogoptionsmenu>div>button {
    cursor: pointer;
    background-color: white;
    float: right;
    margin-right: 12px;
    border: none;
    width: 30px;
    height: 30px;
    padding: 0;
    margin-top: 0;
}
button#toreturntomessages {
    float: left !important;
}
span#countchosenmessageslabel {
    display: inline-block;
    text-align: left;
    color: black;
    font-size: 22px;
    height: 30px;
    width: 30px;
    line-height: 30px;
    font-weight: bold;
    float: left;
    margin-left: 7px;
}
div#allmessages {
    -webkit-box-flex: 3;
    -ms-flex-positive: 3;
    flex-grow: 3;
    padding: 10px 17px;
    padding-bottom: 0;
    padding-top: 72px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    overflow-y: auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    /* justify-content: flex-end; */
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}
.message-wrapper {
    display: flex;
    flex-direction: column;
    margin-bottom: 10px;
}
.message.message-from {
}
span.messagetext {
    font-size: 14px;
    /* padding: 5px 0 10px 0; */
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: left;
    display: inline-block;
    width: 100%;
    min-width: 24px;
    float: left;
}
.messagetext+.messagetime {
    margin-top: 0;
}
.message:after {
    content: "";
    clear: both;
    display: table;
}
.message-seen {
    background-color: white;
}
.message.message-to {
}
#allmessagesinner > div.datelabelblock {
    width: 100%;
    display: block;
    margin-top: 10px;
    margin-bottom: 16px;
}
#allmessagesinner > div.datelabelblock > span {
    width: auto;
    display: inline-block;
    font-size: 13px;
    padding: 5px 9px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 7.5px;
    background-color: var(--color-background-input);
    font-weight: bold;
}
div#iswriting, #isrecording {
    visibility: hidden;
    text-align: left;
    padding-left: 15px;
    font-size: var(--font-notice);
    color: var(--color-addit);
    padding-bottom: 5px;
    height: 18px;
    background-color: white;
    margin: 0;
    border-radius: 0;
}
#outputMulti {
    display: inline-block;
    min-height: 115px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: white;
    padding: 6.5px 10px;
    border-top: 2px solid var(--color-background-input);
    white-space: nowrap;
    border-top: 2px solid var(--color-background-input);
    overflow-x: overlay;
    text-align: left;
    overflow-y: hidden;
}
div#outputMulti:empty {
    padding: 0;
    border: none;
    min-height: 0;
}
#outputMulti::-webkit-scrollbar {
  height: 7px;
}
.messagedoc {
    height: 50px;
    width: 100%;
    display: inline-block;
    margin-top: 25px;
}
div#userdialog-container-2 {
    /* border-top: 2px solid var(--color-background-input); */
    /* background-color: #f0f2f5; */
    /* height: auto; */
    /* box-sizing: border-box; */
    /* padding-bottom: 5px; */
    /* padding-top: 5px; */
    /* border-top: 2px solid var(--color-background-input); */
    /* bottom: 0; */
    /* position: fixed; */
    /* z-index: 100000; */
    /* background-color: rgba(255, 255, 255, .9); */
    /* box-shadow: none; */
    padding: 15px;
    border-top: 1px solid #eee;
    display: flex;
    gap: 10px;
    z-index: 1000;
    height: 77px;
    box-sizing: border-box;
}
div#messageattachoptions {
    display: inline-block;
    width: auto;
    float: left;
}
img#toattachinmessage, img#tosendmessage, img#tosavemessage, img#torecordmsg, img#tosendmessagenonactive {
    height: 30px;
    width: 30px;
    cursor: pointer;
    margin-left: 10px;
    position: absolute;
    bottom: 10px;
    right: 10px;
}
img#toattachinmessage {
    left: 0;
}
input[type=file] {
    display: none;
}
#messageattachoptions>div {
    position: absolute;
    left: 10px;
    bottom: 8px;
    z-index: 1000;
    width: auto;
    height: auto;
}
div#messageattachoptions ul {
	display: none;
	list-style: none;
	width: auto;
	margin: 0;
	font-size: var(--font-notice);
	color: black;
	border-top: 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	text-align: left;
	margin-bottom: 20px;
	border: 1px solid var(--color-background-input);
	background-color: white;
	padding: 7px 15px;
	border-radius: 9px;
	-webkit-box-shadow: 0px 5px 10px 2px rgba(0, 0, 0, 0.2);
	box-shadow: 0px 5px 10px 2px rgba(0, 0, 0, 0.2);
}
div#messageattachoptions ul li:hover{
	background-color: #E6F1FF;
}
div#messageattachoptions:hover ul {
    display: inline-block;
}
div#messageattachoptions ul li i {
    margin-right: 7px;
    font-size: 25px;
    color: #8A2BE2;
}
div#messageattachoptions ul li span {
    display: inline-block;
    line-height: 25px;
    height: 25px;
    vertical-align: top;
    font-size: 14px;
}

div#dialogblock .deletedocuments {
    left: 40px;
    top: 20px;
}
.deleteimages, .deletevideo, .deleteaudio, .deletedocuments {
    right: 0;
    position: absolute;
    height: 20px;
    width: 20px;
    z-index: 2;
}
#dialogblock .doc-thumbnail {
    height: 50px;
    width: 100%;
    display: inline-block;
    margin-top: 25px;
}

#dialogblock audio.aud-thumbnail {
    width: 250px;
    height: 50px;
    margin-top: 25px !important;
}

#dialogblock svg.deleteaudio {
    top: 20px;
}

.allmessagephoto {
    display: none;
}

.messageimg .toleft {
    left: 5px;
    background-color: rgba(255,255,255,.6);
    color: var(--color-addit);
}

.messageimg .toright {
    left: auto;
    right: 5px;
    background-color: rgba(255,255,255,.6);
    color: var(--color-addit);
}

.slick-list.draggable {
    max-width: 300px !important;
}

.portfolioimg .slick-list.draggable {
    max-width: initial !important;
}

span.messagetext ~ .messageimg {
    margin-top: 0;
}

.messageimg {
   box-sizing: border-box;
   width: 100%;
   margin-bottom: -4px;
   position: relative;
}
.messageimg:first-child {
    margin-top: 0;
}

.messagedoc {
    height: 50px;
    width: 100%;
    display: inline-block;
    margin-top: 25px;
}
.messagedoc>img {
    height: 50px;
    display: inline-block;
    margin-right: 12px;
    float: left;
}



#dialogblock div#outputMulti {
    display: inline-block;
    min-height: 115px;
    height: revert;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: white;
    padding: 6.5px 10px;
    border-top: 2px solid var(--color-background-input);
    white-space: nowrap;
    border-top: 2px solid var(--color-background-input);
    overflow-x: overlay;
    text-align: left;
    overflow-y: hidden;
}

#dialogblock #outputMulti>div {
    height: 100px;
    margin-bottom: -4px;
    width: auto;
    display: inline-block;
    cursor: pointer;
    margin-right: 10px;
    position: relative;
    max-height: 100px;
    border-radius: 4px;
    overflow: hidden;
    float: initial;
}

span.messagetext ~ .messageimg {
    margin-top: 6px !important;
}

.slick-track {
    display: inherit !important;
    height: inherit !important;
}

#dialogblock a.messagedoc {
    margin-top: 6px;
}

#dialogblock audio {
    display: inline-block;
    height: 50px;
    margin-top: 6px;
    margin-bottom: 1px;
}

audio + .messagetime {
    margin-top: 0;
}

#dialogblock .message a.messagedoc:first-child {
    margin-top: 3px;
    margin-bottom: 3px;
}

#dialogblock span.messagetext + audio {
    margin-top: 0;
}

img#tosendmessagenonactive {
    opacity: .5;
}

.message-wrapper-selected {
    background-color: azure !important;
}

div#dialogoptionsmenu>div>button {
    cursor: pointer;
    background-color: white;
    float: right;
    margin-right: 12px;
    border: none;
    width: 30px;
    height: 30px;
    padding: 0;
    margin-top: 0;
}

button#toreturntomessages {
    float: left !important;
}

div#dialogoptionsmenu > div > button > img {
    width: 30px;
    height: 30px;
}

div#answeredmessage {
    position: relative;
    width: 100%;
    background: white;
    padding: 12px 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-top: 2px solid var(--color-background-input);
}
div#answeredmessage>span {
    display: inline-block;
    width: calc(100% - 40px);
    background-color: var(--color-background-input);
    border-left: 4px solid var(--color-main);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: left;
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    margin-bottom: 2px;
    float: left;
    border-radius: 4px;
    padding: 5px;
    padding-left: 12px;
}
button#closeansweredmessage {
    width: 25px;
    height: 25px;
    position: absolute;
    right: 10px;
    top: calc(50% - 15px);
    padding: 0;
    border: 0;
    background-color: white;
    cursor: pointer;
}
#closeansweredmessage img {
    width: 16px;
    height: 16px;
    text-align: center;
    vertical-align: middle;
}
div#answeredmessage>span>span {
    display: inline-block;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: var(--font-notice);
}
div#answeredmessage>span>span:first-child {
    color: var(--color-main);
    margin-bottom: 4px;
    font-weight: bold;
}
div#answeredmessage>span>span:nth-child(2) {
    display: inline-block;
    width: 100%;
    white-space: nowrap;
    font-size: var(--font-notice);
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
}
.answeredmessageblock {
    margin-top: 5px;
}
.answeredmessageblock>span {
    display: inline-block;
    width: 100%;
    min-width: 100px;
    /* background-color: var(--color-background-input); */
    padding-left: 12px;
    border-left: 4px solid var(--color-main);
    /* border-radius: 4px; */
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: left;
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    /* background-color: #FFFAFA; */
    margin-bottom: 2px;
}
.answeredmessageblock>span>span {
    display: inline-block;
    width: 100%;
    white-space: nowrap;
    font-size: var(--font-notice);
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
}
.answeredmessageblock>span>span:first-child {
    color: var(--color-main);
    /* margin: 7px 0; */
    font-weight: bold;
}
.answeredmessageblock>span>span:nth-child(2) {
    /* margin-bottom: 5px; */
}

.pagesubheader {
    display: inline-block;
    margin-bottom: 27px;
    text-align: left;
    font-weight: bold;
    box-sizing: border-box;
    padding-left: 10px;
    padding-top: 10px;
    font-size: 19px;
}

.pagesubheader>span {
    margin-right: 10px;
}

span.pagesubheader-counter {
    color: var(--color-main);
}

div#freelance-usermenu {
    margin-bottom: 30px;
}

div#returntoorder {
    display: inline-block;
    text-align: left;
    box-sizing: border-box;
    padding-left: 5px;
    margin-bottom: 20px;
}

div#returntoorder a {
    color: #86059C !important;
    font-weight: bold;
}

#returntoorder img {
    height: 20px;
    margin-right: 10px;
}

#returntoorder span {
    display: inline-block;
    line-height: 20px;
    vertical-align: top;
}

button#toresponseorder {
    display: inline-block;
    box-sizing: border-box;
    font-size: var(--font-main);
    font-weight: bold;
    padding: 10px;
    border: none;
    /* background-color: var(--color-main-light-100); */
    /* color: var(--color-main); */
    cursor: pointer;
    width: 100%;
    border-radius: 15px;
    margin-top: 10px;
}

.userdialog a {
    position: relative;
    display: inline-block;
    width: 100%;
    box-sizing: border-box;
    padding-right: 22px;
}

button.tochooseexecutor {
    display: inline-block;
    box-sizing: border-box;
    font-size: var(--font-main);
    font-weight: bold;
    padding: 10px;
    border: none;
    /* background-color: var(--color-main-light-100); */
    color: var(--color-main);
    cursor: pointer;
    width: 100%;
    border-radius: 4px;
    margin-top: 6px;
}

div#freelance-menu-main ul {
    padding: 0;
    margin: 0;
    /* padding-left: 15px; */
    box-sizing: border-box;
}

#freelance-menu-main li a {
    color: black !important;
    width: 100%;
    display: inline-block;
    line-height: 20px;
    vertical-align: top;
    display: flex;
}

div#chooseexecutormodalparent {
    display: none;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0, 0, 0, .5);
    z-index: 1000000;
}

div#chooseexecutormodal {
    position: absolute;
    /* height: 206px; */
    top: 50%;
    background: white;
    width: 350px;
    left: 50%;
    translate: -50% -50%;
    border-radius: 15px;
    box-sizing: border-box;
    padding: 15px;
}

div#chooseexecutormodalheader {
    font-weight: bold;
    margin-bottom: 15px;
    font-size: 18px;
}

div#chooseexecutormodal input {
    width: 100%;
    display: inline-block;
    margin-bottom: 22px;
    box-sizing: border-box;
    border: none;
    border-radius: 15px;
    background-color: var(--color-background-input);
    padding: 10px;
}

button#chooseexecutormodalsend {
    width: 100%;
    box-sizing: border-box;
    border-radius: 15px;
    margin-top: 5px;
    padding: 10px;
    font-weight: bold;
    border: none;
    cursor: pointer;
}

span.orderstatushistoryelem-statusname {
    width: 100%;
    display: inline-block;
    font-weight: bold;
    font-size: 17px;
    text-align: left;
    color: var(--color-main);
    margin-bottom: 7px;
}

span.orderstatushistoryelem-index {
    display: inline-block;
    border-radius: 100%;
    width: 18px;
    height: 18px;
    background: #86059C;
    position: absolute;
    top: -11.5px;
    left: -11.5px;
    display: none;
}

.orderstatushistoryelem {
    box-sizing: border-box;
    /* border-left: 5px solid #86059C; */
    padding-left: 17px;
    position: relative;
    padding-bottom: 17px;
}

div#orderstatushistory {/* margin-top: 10px; */padding-left: 5px;height: calc(100% - 395px);overflow-y: auto;}

span.orderstatushistoryelem-date {
    font-size: 14px;
    display: inline-block;
    text-align: left;
    width: 100%;
    color: dimgray;
    margin-bottom: 5px;
}

.orderstatushistoryelem:last-child {
    /* border-left: 5px solid rgba(0, 0, 0, 0); */
}

button#tocanceldeal {
    width: 100%;
    margin-top: 10px;
    cursor: pointer;
    display: inline-block;
    width: 100%;
    margin-top: 10px;
    cursor: pointer;
    box-sizing: border-box;
    font-size: var(--font-main);
    font-weight: bold;
    padding: 10px;
    border: none;
    /* background-color: var(--color-main-light-100); */
    color: var(--color-main);
    border-radius: 4px;
}

.message.message-to.message-to-center, .message.message-from.message-from-center {
    float: initial;
    margin: auto;
    font-weight: bold;
}

span.message-center-dealinfo {
    display: inline-block;
    width: 100%;
    font-weight: normal;
    font-size: 13px;
    margin-top: 6px;
    text-align: left;
}

button.toconfirmdeal, button.tocanceldeal, button.tooffernewdeal, button.topaydeal {
    display: inline-block;
    width: 100%;
    margin-top: 10px;
    cursor: pointer;
    box-sizing: border-box;
    font-size: var(--font-main);
    font-weight: bold;
    padding: 10px;
    border: none;
    /* background-color: var(--color-main-light-100); */
    color: var(--color-main);
    border-radius: 4px;
}

button.tocanceldeal, button.topaydeal {
    margin-bottom: 13px;
}

button#topaydeal {
    display: inline-block;
    width: 100%;
    margin-top: 10px;
    cursor: pointer;
    box-sizing: border-box;
    font-size: var(--font-main);
    font-weight: bold;
    padding: 10px;
    border: none;
    /* background-color: var(--color-main-light-100); */
    color: var(--color-main);
    border-radius: 4px;
}

div#asidealldialogs:empty {
    display: none;
}

.asidealldialogsbutton-parent button {
    display: inline-block;
    /* width: 100%; */
    margin-top: 0;
    border-radius: 15px;
    border: none;
    cursor: pointer;
    padding: 10px;
    font-weight: bold;
    flex: 1 1 0px;
    margin-left: 10px;
}

.message button.toconfirmfinishorder {
    margin-bottom: 13px;
}

div#setratingmodalparent {
    top: 0;
    position: fixed;
    background: rgba(0, 0, 0, .5);
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1000000;
    display: none;
}

div#setratingmodal {
    background-color: white;
    width: auto;
    display: inline-block;
    position: absolute;
    padding: 15px;
    border-radius: 15px;
    box-sizing: border-box;
    width: 500px;
    left: calc(50% - 180px);
    height: calc(100% - 50px);
    top: 50%;
    max-height: 621px;
    transform: translate(0, -50%);
}

div#setratingmodalheader {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 12px;
}

span.markblockname {
    display: inline-block;
    width: 100%;
    text-align: left;
    font-size: 15px;
    font-weight: bold;
    width: 200px;
    float: left;
    margin-bottom: 2px;
}

span.markblocksubname {
    text-align: left;
    display: inline-block;
    width: 100%;
    font-size: 13px;
    color: dimgray;
    margin-bottom: 3px;
    width: 200px;
    float: left;
}

.starsrating-parent {
    display: inline-block;
    width: 100%;
    text-align: left;
    float: left;
    width: 200px;
}

.markblockparent {
    margin-bottom: 10px;
    display: inline-block;
    display: flex;
    flex-direction: row-reverse;
}

button#tosaveorderrating {
    width: 100%;
    margin-top: 10px;
    border: none;
    border-radius: 15px;
    padding: 10px;
    font-weight: bold;
    cursor: pointer;
}

textarea.starsratingtextarea {
    display: inline-block;
    width: 100%;
    margin-bottom: 5px;
    resize: none;
    border: none;
    border-radius: 15px;
    background: var(--color-background-input);
    box-sizing: border-box;
    padding: 7px;
}

.starsratingnoticeinput {
    display: inline-block;
    width: 100%;
    /* margin-bottom: 5px; */
    resize: none;
    border: none;
    border-radius: 15px;
    background: var(--color-background-input);
    /* margin-top: 5px; */
    padding: 7px;
    box-sizing: border-box;
    width: 260px;
    float: right;
    height: 50px;
    height: 100%;
}

.setratingmodalcontent {
    height: calc(100% - 80px);
    overflow: hidden;
    overflow-y: auto;
}

svg.starsrating-item {
    cursor: pointer;
}

button.torateorder {
    display: inline-block;
    width: 100%;
    margin-bottom: 13px;
    margin-top: 6px;
    border: none;
    border-radius: 15px;
    padding: 10px;
    font-weight: bold;
    cursor: pointer;
}

svg#closechooseexecutormodal {
    position: absolute;
    width: 25px;
    height: 25px;
    right: 13px;
    top: 10px;
    cursor: pointer;
}

div#extenddeadlinemodalparent {
    background: rgba(0, 0, 0, .5);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1000000;
    display: none;
}

div#extenddeadlinemodal {
    position: absolute;
    height: 157px;
    top: calc(50% - 78.5px);
    background: white;
    width: 350px;
    left: calc(50% - 175px);
    border-radius: 15px;
    box-sizing: border-box;
    padding: 15px;
}

svg#closeextenddeadlinemodal {
    position: absolute;
    width: 25px;
    height: 25px;
    right: 13px;
    top: 10px;
    cursor: pointer;
}

div#extenddeadlinemodalheader {
    font-weight: bold;
    margin-bottom: 15px;
}

#extenddeadlinemodal input {
    width: 100%;
    display: inline-block;
    margin-bottom: 12px;
    box-sizing: border-box;
    border: none;
    border-radius: 15px;
    background-color: var(--color-background-input);
    padding: 10px;
}

button#extenddeadlinebtn {
    width: 100%;
    box-sizing: border-box;
    border-radius: 15px;
    margin-top: 5px;
    padding: 10px;
    font-weight: bold;
    border: none;
    cursor: pointer;
}

/* Модальное окно подтверждения выполнения работы */
div#submitworkmodalparent {
    background: rgba(0, 0, 0, .5);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1000000;
    display: none;
}

div#submitworkmodal {
    position: absolute;
    height: auto;
    top: calc(50% - 200px);
    background: white;
    width: 450px;
    left: calc(50% - 225px);
    border-radius: 15px;
    box-sizing: border-box;
    padding: 15px;
}

svg#closesubmitworkmodal {
    position: absolute;
    width: 25px;
    height: 25px;
    right: 13px;
    top: 10px;
    cursor: pointer;
}

div#submitworkmodalheader {
    font-weight: bold;
    margin-bottom: 15px;
    font-size: 18px;
}

#submitworkmodal label {
    display: block;
    margin-bottom: 8px;
    font-weight: 500;
}

#submitworkmodal textarea {
    width: 100%;
    height: 80px;
    display: inline-block;
    margin-bottom: 15px;
    box-sizing: border-box;
    border: 1px solid #ddd;
    border-radius: 8px;
    background-color: var(--color-background-input);
    padding: 10px;
    resize: vertical;
}

.submitworkmodalinfo {
    background: #f8f9fa;
    border-radius: 8px;
    padding: 12px;
    margin-bottom: 15px;
    font-size: 14px;
    box-sizing: border-box;
}

.submitworkmodalinfo p {
    margin: 0 0 8px 0;
    font-weight: 500;
}

.submitworkmodalinfo ul {
    margin: 0;
    padding-left: 20px;
}

.submitworkmodalinfo li {
    margin-bottom: 4px;
    color: #666;
}

button#submitworkbtn {
    width: 100%;
    box-sizing: border-box;
    border-radius: 15px;
    margin-top: 5px;
    padding: 12px;
    font-weight: bold;
    border: none;
    cursor: pointer;
    background: #28a745;
    color: white;
}

button#submitworkbtn:hover {
    background: #218838;
}

button#submitworkbtn:disabled {
    background: #6c757d;
    cursor: not-allowed;
}

/* Модальное окно отправки на доработку */
div#sendrevisionmodalparent {
    background: rgba(0, 0, 0, .5);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1000000;
    display: none;
}

div#sendrevisionmodal {
    position: absolute;
    height: auto;
    top: calc(50% - 200px);
    background: white;
    width: 450px;
    left: calc(50% - 225px);
    border-radius: 15px;
    box-sizing: border-box;
    padding: 15px;
}

svg#closesendrevisionmodal {
    position: absolute;
    width: 25px;
    height: 25px;
    right: 13px;
    top: 10px;
    cursor: pointer;
}

div#sendrevisionmodalheader {
    font-weight: bold;
    margin-bottom: 15px;
    font-size: 18px;
}

#sendrevisionmodal label {
    display: block;
    margin-bottom: 8px;
    font-weight: 500;
}

#sendrevisionmodal textarea {
    width: 100%;
    height: 100px;
    display: inline-block;
    margin-bottom: 15px;
    box-sizing: border-box;
    border: 1px solid #ddd;
    border-radius: 8px;
    background-color: var(--color-background-input);
    padding: 10px;
    resize: vertical;
}

.sendrevisionmodalinfo {
    background: #fff3cd;
    border: 1px solid #ffeaa7;
    border-radius: 8px;
    padding: 12px;
    margin-bottom: 15px;
    font-size: 14px;
    box-sizing: border-box;
}

.sendrevisionmodalinfo p {
    margin: 0 0 8px 0;
    font-weight: 500;
    color: #856404;
}

.sendrevisionmodalinfo ul {
    margin: 0;
    padding-left: 20px;
}

.sendrevisionmodalinfo li {
    margin-bottom: 4px;
    color: #856404;
}

button#sendrevisionbtn {
    width: 100%;
    box-sizing: border-box;
    border-radius: 15px;
    margin-top: 5px;
    padding: 12px;
    font-weight: bold;
    border: none;
    cursor: pointer;
    background: #ffc107;
    color: #212529;
}

button#sendrevisionbtn:hover {
    background: #e0a800;
}

button#sendrevisionbtn:disabled {
    background: #6c757d;
    cursor: not-allowed;
}

/* Модальное окно подтверждения завершения */
div#confirmcompletionmodalparent {
    background: rgba(0, 0, 0, .5);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1000000;
    display: none;
}

div#confirmcompletionmodal {
    position: absolute;
    height: auto;
    top: calc(50% - 200px);
    background: white;
    width: 450px;
    left: calc(50% - 225px);
    border-radius: 15px;
    box-sizing: border-box;
    padding: 15px;
}

svg#closeconfirmcompletionmodal {
    position: absolute;
    width: 25px;
    height: 25px;
    right: 13px;
    top: 10px;
    cursor: pointer;
}

div#confirmcompletionmodalheader {
    font-weight: bold;
    margin-bottom: 15px;
    font-size: 18px;
}

.confirmcompletionmodalinfo {
    background: #d4edda;
    border: 1px solid #c3e6cb;
    border-radius: 8px;
    padding: 12px;
    margin-bottom: 15px;
    font-size: 14px;
    box-sizing: border-box;
}

.confirmcompletionmodalinfo p {
    margin: 0 0 8px 0;
    font-weight: 500;
    color: #155724;
}

.confirmcompletionmodalinfo ul {
    margin: 0;
    padding-left: 20px;
}

.confirmcompletionmodalinfo li {
    margin-bottom: 4px;
    color: #155724;
}

.confirmcompletionmodalbuttons {
    display: flex;
    gap: 10px;
    margin-top: 15px;
}

button#cancelconfirmcompletionbtn {
    flex: 1;
    box-sizing: border-box;
    border-radius: 15px;
    padding: 12px;
    font-weight: bold;
    border: 1px solid #6c757d;
    cursor: pointer;
    background: white;
    color: #6c757d;
}

button#cancelconfirmcompletionbtn:hover {
    background: #f8f9fa;
}

button#confirmcompletionbtn {
    flex: 1;
    box-sizing: border-box;
    border-radius: 15px;
    padding: 12px;
    font-weight: bold;
    border: none;
    cursor: pointer;
    background: #28a745;
    color: white;
}

button#confirmcompletionbtn:hover {
    background: #218838;
}

button#confirmcompletionbtn:disabled {
    background: #6c757d;
    cursor: not-allowed;
}

/* Кнопки оценивания */
.order-action-btn.rate-order,
.order-action-btn.rate-customer {
    background: #FF9800;
    color: white;
    border: none;
    padding: 8px 16px;
    border-radius: 8px;
    cursor: pointer;
    font-size: 14px;
    /* margin: 5px; */
    transition: background-color 0.3s;
}

.order-action-btn.rate-order:hover,
.order-action-btn.rate-customer:hover {
    background: #FF9800;
}

.order-action-btn.rate-order:disabled,
.order-action-btn.rate-customer:disabled {
    background: #6c757d;
    cursor: not-allowed;
}

/* Модальное окно предложения условий */
div#proposeconditionsmodalparent {
    background: rgba(0, 0, 0, .5);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1000000;
    display: none;
}

div#proposeconditionsmodal {
    position: absolute;
    height: 280px;
    top: calc(50% - 140px);
    background: white;
    width: 400px;
    left: calc(50% - 200px);
    border-radius: 15px;
    box-sizing: border-box;
    padding: 15px;
}

svg#closeproposeconditionsmodal {
    position: absolute;
    width: 25px;
    height: 25px;
    right: 13px;
    top: 10px;
    cursor: pointer;
}

div#proposeconditionsmodalheader {
    font-weight: bold;
    margin-bottom: 15px;
}

#proposeconditionsmodal label {
    display: block;
    margin-bottom: 5px;
    font-weight: bold;
    font-size: 14px;
}

#proposeconditionsmodal input,
#proposeconditionsmodal textarea {
    width: 100%;
    display: inline-block;
    margin-bottom: 12px;
    box-sizing: border-box;
    border: none;
    border-radius: 15px;
    background-color: var(--color-background-input);
    padding: 10px;
}

#proposeconditionsmodal textarea {
    height: 60px;
    resize: vertical;
    font-family: inherit;
}

button#proposeconditionsbtn {
    width: 100%;
    box-sizing: border-box;
    border-radius: 15px;
    margin-top: 5px;
    padding: 10px;
    font-weight: bold;
    border: none;
    cursor: pointer;
    background-color: var(--color-main);
    color: white;
}

/* Модальное окно предложения условий заказчиком */
div#proposecustomerconditionsmodalparent {
    background: rgba(0, 0, 0, .5);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1000000;
    display: none;
}

div#proposecustomerconditionsmodal {
    position: absolute;
    height: 280px;
    top: calc(50% - 140px);
    background: white;
    width: 400px;
    left: calc(50% - 200px);
    border-radius: 15px;
    box-sizing: border-box;
    padding: 15px;
}

svg#closeproposecustomerconditionsmodal {
    position: absolute;
    width: 25px;
    height: 25px;
    right: 13px;
    top: 10px;
    cursor: pointer;
}

div#proposecustomerconditionsmodalheader {
    font-weight: bold;
    margin-bottom: 15px;
}

#proposecustomerconditionsmodal label {
    display: block;
    margin-bottom: 5px;
    font-weight: bold;
    font-size: 14px;
}

#proposecustomerconditionsmodal input,
#proposecustomerconditionsmodal textarea {
    width: 100%;
    display: inline-block;
    margin-bottom: 12px;
    box-sizing: border-box;
    border: none;
    border-radius: 15px;
    background-color: var(--color-background-input);
    padding: 10px;
}

#proposecustomerconditionsmodal textarea {
    height: 60px;
    resize: vertical;
    font-family: inherit;
}

button#proposecustomerconditionsbtn {
    width: 100%;
    box-sizing: border-box;
    border-radius: 15px;
    margin-top: 5px;
    padding: 10px;
    font-weight: bold;
    border: none;
    cursor: pointer;
    background-color: var(--color-main);
    color: white;
}

button#toextenddeadline, #toopendispute, .tonotconfirmfinishorder {
    width: 100%;
    margin-top: 10px;
    border-radius: 15px;
    padding: 10px;
    cursor: pointer;
    font-weight: bold;
    border: none;
}

.profileblock-header {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 15px;
    text-align: left;
    display: inline-block;
    text-align: right;
    height: 24px;
    line-height: 24px;
}

span.profileblock-header-counter {
    margin-left: 10px;
    display: inline-block;
    color: dimgray;
}

.profileblock-noelems {
    font-size: 15px;
    text-align: left;
    line-height: 35px;
    margin-top: -10px;
}

svg#mainuserrating {margin-right: 8px;width: 140px;height: 25px;vertical-align: top;}

span#mainuserrating-span {float: right;margin-right: 5px;vertical-align: top;padding-top: 2px;}

.profileblock-header span {
    float: left;
}

svg#closesetratingmodal {
    width: 25px;
    position: absolute;
    cursor: pointer;
    top: 11px;
    right: 15px;
}

.userratingmarks-parent {
    display: inline-block;
    margin-bottom: 5px;
    position: relative;
}

span.userratingmarks-name {
    display: inline-block;
    width: 100%;
    text-align: left;
    font-size: 15px;
    font-weight: bold;
    width: 150px;
    float: left;
    margin-bottom: 2px;
}

span.userratingmarks-subname {
    text-align: left;
    display: inline-block;
    width: 100%;
    font-size: 13px;
    color: dimgray;
    margin-bottom: 3px;
    width: 150px;
    float: left;
}

.userratingmarks-name-parent {
    display: inline-block;
    width: 180px;
    float: left;
    overflow: hidden;
}

span.userratingmarks-avg {
    display: inline-block;
    font-size: 13px;
    font-weight: bold;
    width: 25px;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translate(0, -50%);
}

div#userratingmarks-progress-line {
    display: inline-block;
    height: 10px;
    width: calc(100% - 250px);
    background: #fece3c;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    position: absolute;
    left: 200px;
    top: 50%;
    transform: translate(0 ,-50%);
}

div#userratingmarks-progress-line-gray {
    position: absolute;
    top: 0;
    right: 0;
    height: 10px;
    background-color: #d9d9d9;
}

.userreviews-item {
    display: inline-block;
    margin-top: 10px;
    padding: 10px;
    box-sizing: border-box;
    border: 1px solid #d9d9d9;
    border-radius: 15px;
}

.userreview-main-left {
    display: inline-block;
    width: calc(100% - 185px);
    float: left;
}

span.userreview-main-left-name {
    display: inline-block;
    width: 100%;
    font-weight: bold;
    text-align: left;
    margin-bottom: 2px;
    font-size: 14px;
}

span.userreview-main-left-date {
    display: inline-block;
    width: 100%;
    text-align: left;
    font-size: 13px;
    color: dimgray;
}

.userreview-main {
    display: inline-block;
}

.userreview-main-right {
    width: 175px;
    float: right;
    text-align: right;
    height: 25px;
}

svg.userreviewrating {
    height: 25px;
}

span.userreviewrating-span {
    width: 25px;
    display: inline-block;
    margin-left: 8px;
    text-align: center;
    font-weight: bold;
    font-size: 14px;
    height: 25px;
    line-height: 25px;
    vertical-align: top;
    padding-top: 2px;
}

span.userreview-main-desc {
    display: inline-block;
    width: 100%;
    font-size: 14px;
    text-align: left;
    margin: 10px 0 7px;
}

span.userreview-main-desc:empty {
    display: none;
}

.readmorereview {
    text-align: left;
    font-size: 13px;
    margin-top: 5px;
    cursor: pointer;
    text-decoration: underline;
}

.userreview-marks-item {margin-top: 5px;display: inline-block;position: relative;}

span.userreview-marks-item-name {
    display: inline-block;
    width: 150px;
    font-weight: bold;
    font-size: 13px;
    float: left;
    text-align: left;
}

.userreviewmarks-progress-line {
    display: inline-block;
    height: 10px;
    width: calc(100% - 220px);
    background: #fece3c;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    position: absolute;
    left: 170px;
    top: 50%;
    transform: translate(0 ,-50%);
}

span.userreview-marks-item-number {
    display: inline-block;
    font-size: 13px;
    font-weight: bold;
    width: 25px;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translate(0, -50%);
}

.userreviewmarks-progress-line-gray {
    position: absolute;
    top: 0;
    right: 0;
    height: 10px;
    background-color: #d9d9d9;
}

.userreview-marks-parent {
    display: none;
}

span.userreview-marks-item-comm {
    display: inline-block;
    width: 100%;
    text-align: left;
    margin-bottom: 5px;
}

.userreview-marks-item>div {
    display: inline-block;
    position: relative;
}

span.userreview-marks-item-comm:empty {
    display: none;
}

span.freelance-menu-subheader {
    display: inline-block;
    width: 100%;
    text-align: left;
    font-weight: bold;
    font-size: 14px;
    margin-bottom: 5px;
    padding-bottom: 5px;
}

span.profileblock-info-cityage {
    font-size: 14px;
    margin-top: 5px;
}

span.profileblock-info-onlinestatus {
    font-size: 15px;
}

.asidealldialogsbutton-parent {
    margin-top: 10px;
    display: flex;
}

.asidealldialogsbutton-parent button:first-child {
    margin-left: 0;
}

.asidealldialogsbutton-parent button a {
    color: black;
}

.asidealldialogsbutton-parent button.torateorder {
    margin-top: 0 !important;
    margin-bottom: 0;
}

.toconfirmfinishorder {
    display: inline-block;
    width: 100%;
    margin-top: 10px;
    border-radius: 15px;
    border: none;
    cursor: pointer;
    padding: 10px;
    font-weight: bold;
    /* flex: 1 1 0px; */
    /* margin-left: 10px; */
}

.userdialog button.torateorder {
    margin-top: 10px;
    margin-bottom: 0;
}

.addingfreelanceselect-parent {
    display: inline-block;
    width: calc(50% - 9px);
    margin-bottom: 18px;
    vertical-align: top;
}

div#addingfreelancetask label {
    display: inline-block;
    width: 100%;
    font-weight: bold;
    margin-bottom: 8px;
    font-size: 14px;
    padding-left: 20px;
    box-sizing: border-box;
}

#addingfreelancetask .select2-container {
    width: 100% !important;
}

div#addingfreelancetask .addingfreelanceselect-parent:nth-child(2n+1) {
    margin-right: 13px;
}

.select2-selection {
  -webkit-box-shadow: none;
  box-shadow: none;
  background-color: #fff;
  border: 0;
  border-radius: 0;
  color: #555555;
  font-size: 14px;
  outline: 0 !important;
  min-height: 42px !important;
  text-align: left;
}

.select2-selection__rendered {
  margin: 7px;
  display: inline-block !important;
  width: calc(100% - 42px);
}

ul.select2-selection__rendered {
    width: calc(100% - 18px);
}

.select2-selection__arrow {
  margin: 7px;
}

.select2-selection {
    border-radius: 15px !important;
    overflow: hidden;
    text-overflow: ellipsis;
}

.select2-selection--multiple {
    border: 1px solid #aaa !important;
}

textarea.select2-search__field {margin: 7px !important;display: inline-block;width: calc(100% - 14px) !important;background: initial !important;/* display: none; */line-height: 27px;height: 21px !important;padding-left: 8px !important;font-family: 'Montserrat' !important;}

span.select2-search.select2-search--inline {
    display: inline-block;
    width: 100%;
    /* float: left; */
    /* display: none; */
}

#addingfreelancetask #attaching span:nth-child(1) {
    display: inline-block;
    width: calc(100% - 100px);
    float: right;
    font-size: 14px;
    color: var(--color-gray-dark);
    text-align: left;
}

.select2-container .select2-selection--multiple .select2-selection__rendered:empty {
    display: none !important;
}

ul#select2-freelancetasktype-md-container {}

.select2-container--disabled .select2-selection--multiple {
    background: #eee !important;
}

.tasktypes-view-parent {
    display: inline-block;
    margin-bottom: 20px;
}

.tasktypes-view-header, .taskinterests-view-header {
    display: inline-block;
    font-weight: bold;
    width: 100%;
    margin-bottom: 10px;
    font-size: 15px;
}

.tasktypes-view {
    display: inline-block;
    width: auto;
    font-size: 14px;
    border-radius: 15px;
    padding: 5px 20px;
    font-weight: bold;
    color: #777;
    border: 1px solid #777;
}

.order-addinfo-types .tasktypes-view-parent {
    margin: 0;
}

.select2-container--default .select2-results>.select2-results__options {
    max-height: 500px !important;
}

span.freelanceordernewmsgcouner {
    display: inline-block;
    width: 100%;
    margin-bottom: 15px;
    font-size: 14px;
    font-weight: bold;
}

span.freelanceordernewmsgcouner a {
    color: #A60703 !important;
}

.message button#toextenddeadline {
    margin-top: 0;
}

.message button#toopendispute {
    margin-bottom: 13px;
}

.freelance-usermenu-profile-customerratingparent {
    font-size: 14px;
    text-align: left;
    display: inline-block;
    width: calc(100% - 75px);
    margin-left: 13px;
    line-height: 20px;
    height: 20px;
}

svg#customeruserrating {
    height: 20px;
}

span#customeruserrating-span {
    display: inline-block;
    margin-left: 8px;
    vertical-align: top;
    font-weight: bold;
    padding-top: 2px;
}

.profileblock-subheader {
    font-size: 15px;
    font-weight: bold;
    margin-top: 15px;
    text-align: left;
    display: inline-block;
    height: 24px;
    line-height: 24px;
    padding-left: 5px;
}

svg#mainuserratingcustomer {
    margin-right: 8px;
    width: 140px;
    height: 25px;
    vertical-align: top;
}

span#mainuserratingcustomer-span {
    float: right;
    margin-right: 5px;
    vertical-align: top;
    padding-top: 2px;
}

div#profileblock-reviews-customer-parentblock {
    display: none;
}

div#profileblock-reviews-menu {
    display: inline-block;
    margin-bottom: 20px;
}

span#profileblock-reviews-menu-executor {
    display: inline-block;
    font-size: 14px;
    width: calc(50% - 10px);
    color: var(--color-main);
    border: 1px solid var(--color-main);
    padding: 5px;
    border-radius: 15px;
    box-sizing: border-box;
    cursor: pointer;
    float: left;
    line-height: 19px;
    height: 31px;
    text-align: center;
}

span#profileblock-reviews-menu-customer {
    display: inline-block;
    width: calc(50% - 10px);
    font-size: 14px;
    border-radius: 15px;
    color: var(--color-main);
    border: 1px solid var(--color-main);
    padding: 5px;
    box-sizing: border-box;
    float: right;
    cursor: pointer;
    height: 31px;
    line-height: 19px;
    text-align: center;
}

.profileblock-reviews-menu-active {
    font-weight: bold;
    border-width: 2px !important;
    line-height: 17px !important;
}

span.onlinepoint {
    display: inline-block;
    width: 9px;
    height: 9px;
    background-color: #26b226;
    border-radius: 100%;
    margin-right: 4px;
    margin-top: 5px;
    vertical-align: top;
}

span.profileblock-info-generalratingparent {
    display: inline-block;
    float: right;
    width: calc(100% - 150px);
    text-align: left;
    margin-bottom: 5px;
    height: 25px;
    line-height: 25px;
}

span#generaluserrating-span {display: inline-block;font-weight: bold;vertical-align: top;height: 25px;line-height: 25px;padding-top: 2px;}

svg#generaluserrating {
    height: 25px;
    margin-right: 9px;
}

span.userreview-main-left-subj {
    display: inline-block;
    width: 100%;
    text-align: left;
    font-size: 11px;
    color: dimgray;
    font-weight: bold;
}

#dialogheader span.onlinepoint {
    top: 41px;
    position: absolute;
    left: 54px;
}

.userinterests-card-active {
    background: var(--color-background-input);
    border-radius: 15px;
}

.userinterests-card>span>span {
    vertical-align: middle;
}

.userinterests-card>span>span:nth-child(3) {
    white-space: nowrap;
}

li.menulink-active {
    background-color: var(--border-color) !important;
    font-weight: bold;
}

#freelance-menu-main li:hover {
    background-color: #E6F1FF;
}

div#freelance-menu-child {
    text-align: center;
    /* padding-left: 10px; */
    position: fixed;
    /* top: 95px; */
    /* display: inline-block; */
    width: inherit;
}

div#pricecalculator-parent {
    margin-bottom: 15px;
    box-shadow: 0 0 10px 3px rgb(221 221 221);
    padding: 15px;
    padding-bottom: 0;
    box-sizing: border-box;
    background: white;
    border-radius: 15px;
    width: calc(100% - 20px);
    margin-left: 10px;
}

div#pricecalculator-parent label {
    font-size: 13px;
    display: inline-block;
    width: 100%;
    text-align: left;
    margin-bottom: 7px;
    font-weight: bold;
    color: dimgray;
}

div#pricecalculator-parent input {
    display: inline-block;
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 15px;
    padding: 10px;
    border-radius: 15px;
    border: none;
    padding-left: 15px;
    background-color: #f9f9f9;
    font-size: 17px;
    font-weight: bold;
    border: 1px solid var(--color-gray-lightest);
}

span.pricecalculator-error {
    display: inline-block;
    font-size: 12px;
    width: 100%;
    margin-bottom: 15px;
    text-align: left;
    color: #f40b0b;
}

span#profileblock-intname {
    display: inline-block;
    width: 100%;
    text-align: left;
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 10px;
    line-height: 26px;
}

div#setratingmodal-thanks {
    margin: 25px 0;
    font-size: 22px;
    font-weight: bold;
    line-height: 50px;
}

div#pageway {
    margin-top: 30px;
    font-weight: bold;
    text-align: left;
    margin-left: 10px;
    width: calc(100% - 10px);
    display: inline-block;
    height: auto;
}

#pageway span {
    color: var(--color-addit);
    display: inline-block;
    line-height: 20px;
    font-size: 13px;
    font-weight: 500;
    vertical-align: top;
}

#pageway img {
    height: 12px;
    margin: 0 10px;
    margin-top: 4px;
    vertical-align: top;
}

#pageway a {
    line-height: 20px;
    display: inline-block;
    vertical-align: top;
    height: auto;
}

div#pageway a:last-child span {
    font-weight: bold;
    color: #434343;
}

.fullportfoliocard audio {
    margin-top: 10px;
    width: 100%;
}

a.portfoliodoc>img {
    height: 50px;
    display: inline-block;
    margin-right: 20px;
    float: left;
}

span.portfolioname {
    display: inline-block;
    width: calc(100% - 75px);
    margin: 0;
    float: left;
    height: 50px;
    box-sizing: border-box;
    text-align: left;
}

.portfolioname>span:nth-child(1) {
    line-height: 30px;
    font-size: var(--font-main);
    color: #000;
    font-weight: 700;
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.portfolioname>span:nth-child(2) {
    line-height: 20px;
    font-size: var(--font-notice);
    color: var(--color-gray-dark);
    display: block;
}

a.portfoliodoc {
    display: inline-block;
    width: 100%;
    margin-top: 10px;
}

@media screen and (max-height: 940px) and (orientation: landscape) {
    div#freelance-menu-parent {
        width: 247px;
    }
    main#content {
        width: calc(100% - 282px);
    }
    div#profileblock-interests {
        width: 200px;
    }
    div#contentrightblocks {
        width: calc(100% - 215px)
    }
}

@media screen and (orientation: portrait) and (max-width: 426px) {
    .order-addinfo {
        width: 100%;
    }
    .order-maininfo {
        width: 100%;
    }
    .addingfreelanceselect-parent {
        width: 100%;
    }
}

@media screen and (orientation: portrait) {
    div#asidealldialogs {
        border-radius: 0;
        box-shadow: none;
    }
    div#dialogblock {
        position: fixed;
        top: 0;
        bottom: 0;
        height: auto;
        z-index: 100000;
        border-radius: 0;
    }
    div#pricecalculator-parent {
        box-shadow: none;
        border: 1px solid var(--color-gray-lightest);
    }
    div#pageway {
        /* margin-top: 0; */
        margin-bottom: 25px;
    }
    .order {
        border-radius: 0;
    }
    div#modalregist {
        width: 100%;
        height: 100%;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        transform: none;
        border-radius: 0;
        max-height: 100%;
        max-width: none;
    }
    #header {
        /* height: 25px; */
    }
    .logo {
        display: none !important;
    }
    #header>a {
        /* display: none !important; */
        height: 35px !important;
        margin-top: 5px !important;
    }
    
    div#freelance-menu-parent {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        width: 75%;
        z-index: 100000;
        background: white;
        margin: 0;
        padding: 0;
        max-height: 100%;
        height: 100%;
    }
    div#freelance-usermenu {
        width: 100%;
        border-radius: 0;
        box-shadow: none;
        background: var(--color-background-input);
        margin-bottom: 15px;
        border-bottom: 1px solid var(--color-gray-lightest);
        margin: 0;
    }
    div#freelance-menu-main {
        border-radius: 0;
        box-shadow: none;
        margin-bottom: 0;
        border-bottom: 2px solid var(--color-background-input);
        margin: 0;
    }
    main#content {
        width: 100%;
        margin: 0;
        /* margin-top: 40px; */
    }
    div#freelancetaskcontent {
        border-radius: 0;
        padding: 15px;
    }
    .pagesubheader {
        /* display: none; */
        margin-top: 10px;
        padding-left: 25px;
    }
    #freelance-menu-parent .pagesubheader {
        display: inline-block;
    }
    input#freelancetaskname, 
    textarea#freelancetaskdesc, 
    input[name="freelancetaskpricerange-low"], 
    input[name="freelancetaskpricerange-high"],
    input[name="freelancetaskpricedeadline"] {
        font-size: 14px;
    }
    div#profileblock-interests {
        width: 100%;
    }

    div#contentrightblocks {
        width: 100%;
    }

    img.profileblock-info-avatar {
        width: 75px;
    }

    span.profileblock-info-name,
    span.profileblock-info-onlinestatus, 
    .profileblock-info-cityage {
        width: calc(100% - 100px);
    }

    span.profileblock-info-generalratingparent {
        width: calc(100% - 95px);
    }

    #userheaderoptions {
        width: 0;
    }

    div#mobilemenubtn, .mobilelogo {
        display: inline-block !important;
    }
}

@media screen and (max-width:759px) and (orientation: landscape) { 
    .addingfreelanceselect-parent {
        width: 100%;
    }
}
    
@media screen and (min-width: 760px) and (max-width: 815px) {
    div#freelancetaskpricerange span, #freelancetaskpricedeadline span {
        height: 33px;
    }
}

@media screen and (max-width: 640px) {
    div#freelance-menu-child {
        position: static;
        width: 100%;
    }
    #freelance-menu-parent {
        margin-top: 20px;
        height: auto;
    }
}

div#mobilemenubtn {
    display: none;
    width: 25px;
    height: 25px;
    margin-left: 15px;
    padding-top: 5px;
    padding-left: 0;
}

body {
    display: inline-block;
    width: 100%;
    height: var(--display-height);
}

.container {
    height: var(--display-height);
    margin-top: 0;
    /* display: inline-block; */
}

.page {
    padding-top: 65px;
}

button#toentermenubtn {
    width: 100%;
    margin-top: 10px;
    color: white;
    background-color: var(--color-main);
    padding: 8px;
    border: none;
    border-radius: 15px;
    font-weight: bold;
}

div#modalentercontent {
    display: none;
}

div#modalregist-menu {
    display: inline-block;
    width: 100%;
    margin-bottom: 25px;
}

div#toopenmodalregistcontent {
    display: inline-block;
    width: 50%;
    float: left;
    padding: 10px;
    box-sizing: border-box;
    font-weight: bold;
}

div#toopenmodalentercontent {
    display: inline-block;
    width: 50%;
    float: right;
    padding: 10px;
    box-sizing: border-box;
    font-weight: bold;
}

.modalregist-menu-active {border-bottom: 2px solid;}

@media screen and (max-width: 330px) {
    svg#customeruserrating {
        height: 18px;
    }
    span#customeruserrating-span {
        margin-left: 6px;
        padding-top: 0;
    }
}

a#toreturndialogbtn {
    display: inline-block;
    width: 25px;
    height: 48px;
    float: left;
    margin-right: 10px;
    background-image: url(/icons/arrowleft.png);
    background-size: 25px 25px;
    background-repeat: no-repeat;
    background-position: center;
}

@media screen and (orientation: landscape) {
    a#toreturndialogbtn {
        display: none;
    }
    div#dialogheadertext {
        width: calc(100% - 58px);
    }
    #pageway + div#freelance-menu-parent {
        margin-top: 20px;
    }
}



.mobilelogo {
    display: none;
    vertical-align: top;
    width: auto;
    margin-left: 10px;
}

.mobilelogo img {
    vertical-align: top;
    height: 32px;
    margin-top: 3px;
}

#chooseexecutormodal label {
    display: inline-block;
    width: 100%;
    text-align: left;
    margin-bottom: 7px;
    font-size: 15px;
}

#freelance-menu-parent #asidealldialogs {
    width: calc(100% - 20px);
    margin-left: 10px;
}

div#confirmpaymentmodal {
    position: absolute;
    /* height: 206px; */
    top: 50%;
    background: white;
    width: 350px;
    left: 50%;
    translate: -50% -50%;
    border-radius: 15px;
    box-sizing: border-box;
    padding: 15px;
}

div#confirmpaymentmodalparent {
    display: none;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0, 0, 0, .5);
    z-index: 1000000;
}

svg#closeconfirmpaymentmodal {
    position: absolute;
    width: 25px;
    height: 25px;
    right: 13px;
    top: 10px;
    cursor: pointer;
}

div#confirmpaymentmodalheader {
    font-weight: bold;
    margin-bottom: 15px;
    font-size: 18px;
}

span.confirmpaymentmodalspan {
    display: inline-block;
    width: 100%;
    text-align: left;
    margin-bottom: 7px;
    font-size: 15px;
}

button#confirmpaymentmodalsend {
    width: 100%;
    box-sizing: border-box;
    border-radius: 15px;
    margin-top: 5px;
    padding: 10px;
    font-weight: bold;
    border: none;
    cursor: pointer;
}

span.openordersoptions {
    display: inline-block;
    background: url(/icons/options.png);
    background-size: 25px;
    height: 25px;
    width: 25px;
    position: absolute;
    top: 10px;
    right: 10px;
    cursor: pointer;
}

.ordersoptions {
    display: inline-block;
    float: right;
    width: calc(var(--new-width) - 100px);
}

.ordersoptions-content>ul {
	margin: 0;
    padding: 0;
}
.ordersoptions-content>ul>li {
	list-style:none;
	padding:7px;
	font-size: var(--font-notice);
	cursor:pointer;
	border-radius: 4px;
}

.ordersoptions-content>ul>li:hover {
	background-color: #f5e4f4;
}

.ordersoptions:hover .ordersoptions-content {
	display: block;
}

.ordersoptions-content {
    display: none;
    width: auto;
    position: absolute;
    right: 10px;
    top: 35px;
    border: 1px solid var(--color-background-input);
    z-index: 50;
    background-color: white;
    color: var(--color-menu);
    padding: 7px 15px;
    border-radius: 9px;
    -webkit-box-shadow: 0px 5px 10px 2px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0px 5px 10px 2px rgba(0, 0, 0, 0.2);
    box-shadow: 0px 5px 10px 2px rgba(0, 0, 0, 0.2);
}

.result-name {
    font-weight: bold;
    margin-bottom: 3px;
}

.result-description {
    font-size: 13px;
    font-style: italic;
    box-sizing: border-box;
    margin-bottom: 3px;
}

.result-hobby {
    font-size: 13px;
    font-weight: bold;
}

.file-item span {
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Стили для модального окна добавления отклика */
div#addproposalmodalparent {
    display: none;
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1000;
}

div#addproposalmodal {
    overflow-y: hidden;
    position: absolute;
    background-color: white;
    border-radius: 15px;
    width: calc(var(--display-width) - 300px);
    max-width: 550px;
    max-height: calc(100% - 40px);
    padding: 15px 25px;
    height: auto;
    box-sizing: border-box;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

div#addproposalmodalheader {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 20px;
    text-align: center;
}

div#addproposalmodal label {
    display: block;
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 8px;
    color: #333;
}

div#addproposalmodal input,
div#addproposalmodal textarea {
    width: 100%;
    font-size: 16px;
    border-radius: 4px;
    border: 1px solid #ddd;
    background-color: #f9f9f9;
    padding: 10px;
    box-sizing: border-box;
    margin-bottom: 15px;
    font-family: var(--font-family);
}

div#addproposalmodal textarea {
    resize: vertical;
    min-height: 80px;
}

button#addproposalbtn {
    width: 100%;
    font-size: 18px;
    font-family: var(--font-family);
    font-weight: bold;
    color: white;
    padding: 12px;
    box-sizing: border-box;
    border-radius: 10px;
    border: none;
    background-color: RGB(38, 178, 38);
    cursor: pointer;
    margin-top: 10px;
}

button#addproposalbtn:hover {
    background-color: RGB(32, 150, 32);
}

svg#closeaddproposalmodal {
    cursor: pointer;
    display: inline-block;
    position: absolute;
    width: 25px;
    height: 25px;
    padding: 0;
    margin: 0;
    border: none;
    fill: #6b606b;
    top: 10px;
    right: 10px;
}

svg#closeaddproposalmodal:hover {
    fill: #333;
}

/* Стили для описания услуги и файлов */
.service-description {
    margin: 20px 0;
    padding: 15px;
    background-color: #f8f9fa;
    border-radius: 8px;
    border-left: 4px solid var(--color-main);
    box-sizing: border-box;
    display: inline-block;
}

.service-description h4 {
    margin: 0 0 10px 0;
    font-size: 16px;
    font-weight: bold;
    color: #333;
}

.service-description-text {
    font-size: 14px;
    line-height: 1.5;
    color: #555;
}

.service-files {
    margin: 20px 0;
    padding: 15px;
    background-color: #f8f9fa;
    border-radius: 8px;
    border-left: 4px solid #28a745;
}

.service-files h4 {
    margin: 0 0 15px 0;
    font-size: 16px;
    font-weight: bold;
    color: #333;
}

.service-photos, .service-documents {
    margin-bottom: 15px;
}

.service-photos h5, .service-documents h5 {
    margin: 0 0 10px 0;
    font-size: 14px;
    font-weight: bold;
    color: #555;
}

.service-photos:last-child, .service-documents:last-child {
    margin-bottom: 0;
}

.service-name {
    margin: 10px 0;
    padding: 8px 12px;
    background-color: #e3f2fd;
    border-radius: 6px;
    border-left: 3px solid #2196f3;
}

.service-name-label {
    font-size: 12px;
    font-weight: bold;
    color: #1976d2;
    text-transform: uppercase;
    margin-right: 8px;
}

.service-name-text {
    font-size: 14px;
    color: #333;
    font-weight: 500;
}

.file-size {
    font-size: 11px;
    color: #666;
    margin-left: 8px;
}

.file-description {
    font-size: 12px;
    color: #777;
    margin-top: 4px;
    margin-left: 35px;
    font-style: italic;
    line-height: 1.3;
}

/* Стили для кнопок изменения статуса заказа */
.freelance-order-actions {
    margin-top: 15px;
    padding: 10px;
    background: #f8f9fa;
    border-radius: 8px;
    box-sizing: border-box;
}

.order-action-btn {
    display: block;
    width: 100%;
    margin-bottom: 8px;
    padding: 10px 15px;
    background: #fff;
    border: 2px solid #4CAF50;
    border-radius: 6px;
    color: #4CAF50;
    font-family: var(--font-family);
    font-size: 14px;
    font-weight: 500;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
    text-decoration: none;
    box-sizing: border-box;
}

.order-action-btn:hover {
    background: #4CAF50;
    color: white;
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(76, 175, 80, 0.3);
}

.order-action-btn:last-child {
    margin-bottom: 0;
}

/* Специальные стили для разных типов кнопок */
.order-action-btn.cancel-order,
.order-action-btn.cancel-execution,
.order-action-btn.send-for-revision {
    border-color: #f44336;
    color: #f44336;
}

.order-action-btn.cancel-order:hover,
.order-action-btn.cancel-execution:hover,
.order-action-btn.send-for-revision:hover {
    background: #f44336;
    color: white;
    box-shadow: 0 2px 8px rgba(244, 67, 54, 0.3);
}

.order-action-btn.pay-order {
    border-color: #2196F3;
    color: #2196F3;
    font-weight: bold;
}

.order-action-btn.pay-order:hover {
    background: #2196F3;
    color: white;
    box-shadow: 0 2px 8px rgba(33, 150, 243, 0.3);
}

.order-action-btn.rate-order,
.order-action-btn.rate-customer {
    border-color: #FF9800;
    color: white;
}

/* Стили для отображения оценок в левом меню */
.order-ratings-section {
    /* margin-top: 20px; */
    padding: 15px;
    background: #f8f9fa;
    border-radius: 8px;
    border: 1px solid #e9ecef;
    box-sizing: border-box;
    float: left;
}

.rating-item {
    margin-bottom: 15px;
    padding: 10px;
    background: white;
    border-radius: 6px;
    border: 1px solid #dee2e6;
    box-sizing: border-box;
}

.rating-item:last-child {
    margin-bottom: 0;
}

.rating-label {
    font-weight: 600;
    color: #495057;
    margin-bottom: 8px;
    font-size: 14px;
}

.rating-stars {
    display: flex;
    align-items: center;
    gap: 8px;
    box-sizing: border-box;
    width: 100%;
}

.rating-svg {
    width: 100px;
    height: 20px;
    flex-shrink: 0;
}

.rating-value {
    font-weight: 600;
    color: #FF9800;
    font-size: 16px;
}

.rating-comment {
    margin-top: 8px;
    padding: 8px;
    background: #f8f9fa;
    border-radius: 4px;
    font-size: 13px;
    color: #6c757d;
    font-style: italic;
    border-left: 3px solid #FF9800;
}

/* Стили для количества оценок */
.rating-count {
    font-size: 12px;
    color: #6c757d;
    margin-left: 5px;
    font-weight: normal;
}

/* Стили для модальных окон отзывов */
#customer-review-modal-parent,
#executor-review-modal-parent {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: center;
}

#customer-review-modal,
#executor-review-modal {
    box-sizing: border-box;
    background: white;
    border-radius: 12px;
    padding: 20px;
    max-width: 500px;
    width: 90%;
    max-height: 80vh;
    overflow-y: auto;
    position: relative;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

#close-customer-review-modal,
#close-executor-review-modal {
    position: absolute;
    top: 15px;
    right: 15px;
    cursor: pointer;
    color: #666;
    transition: color 0.3s;
}

#close-customer-review-modal:hover,
#close-executor-review-modal:hover {
    color: #333;
}

#customer-review-modal-header,
#executor-review-modal-header {
    margin-bottom: 20px;
    padding-right: 40px;
    box-sizing: border-box;
}

#customer-review-modal-header h3,
#executor-review-modal-header h3 {
    margin: 0;
    color: #333;
    font-size: 18px;
    font-weight: 600;
}

#customer-review-modal-content,
#executor-review-modal-content {
    line-height: 1.6;
}

.review-criterion {
    margin-bottom: 15px;
    box-sizing: border-box;
    padding: 10px;
    background: #f8f9fa;
    border-radius: 8px;
    border-left: 4px solid #FF9800;
}

.review-criterion-label {
    font-weight: 600;
    color: #333;
    margin-bottom: 8px;
}

.review-criterion-stars {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}

.review-criterion-comment {
    font-size: 14px;
    color: #666;
    font-style: italic;
}

.review-general-comment {
    margin-top: 20px;
    padding: 15px;
    background: #fff3cd;
    border-radius: 8px;
    border-left: 4px solid #ffc107;
}

.review-general-comment h4 {
    margin: 0 0 10px 0;
    color: #856404;
    font-size: 16px;
}

.review-general-comment p {
    margin: 0;
    color: #856404;
    font-size: 14px;
}

.review-date {
    margin-top: 15px;
    font-size: 12px;
    color: #999;
    text-align: right;
}

.order-action-btn.rate-order:hover,
.order-action-btn.rate-customer:hover {
    background: #FF9800;
    color: white;
    box-shadow: 0 2px 8px rgba(255, 152, 0, 0.3);
}

.message.message-to.message-to-center, .message.message-from.message-from-center {
    float: initial;
    margin: auto;
    font-weight: bold;
}

/* Стили для системных сообщений */
.message.message-system {
    float: initial;
    margin: auto;
    font-weight: bold;
    background-color: #f0f0f0;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 8px 12px;
    text-align: center;
    color: #666;
    font-size: 13px;
    max-width: 80%;
}

.message-wrapper.message-system {
    text-align: center;
    margin: 10px 0;
}

/* Стили для новых кнопок статуса negotiating */
.order-action-btn.cancel-proposal,
.order-action-btn.reject-proposal {
    border-color: #f44336;
    color: #f44336;
}

.order-action-btn.cancel-proposal:hover,
.order-action-btn.reject-proposal:hover {
    background: #f44336;
    color: white;
    box-shadow: 0 2px 8px rgba(244, 67, 54, 0.3);
}

.order-action-btn.view-executor-dialog,
.order-action-btn.confirm-conditions {
    border-color: #4caf50;
    color: #4caf50;
}

.order-action-btn.view-executor-dialog:hover,
.order-action-btn.confirm-conditions:hover {
    background: #4caf50;
    color: white;
    box-shadow: 0 2px 8px rgba(76, 175, 80, 0.3);
}

.order-action-btn.propose-conditions {
    border-color: #2196f3;
    color: #2196f3;
}

.order-action-btn.propose-conditions:hover {
    background: #2196f3;
    color: white;
    box-shadow: 0 2px 8px rgba(33, 150, 243, 0.3);
}

.order-action-btn.propose-customer-conditions {
    border-color: #9c27b0;
    color: #9c27b0;
}

.order-action-btn.propose-customer-conditions:hover {
    background: #9c27b0;
    color: white;
    box-shadow: 0 2px 8px rgba(156, 39, 176, 0.3);
}

/* Стили для кнопки отмены заказа */
.order-action-btn.cancel-order {
    border-color: #f44336;
    color: #f44336;
}

.order-action-btn.cancel-order:hover {
    background: #f44336;
    color: white;
    box-shadow: 0 2px 8px rgba(244, 67, 54, 0.3);
}

/* Стили для кнопки оплаты заказа */
.order-action-btn.pay-order {
    border-color: #4caf50;
    color: #4caf50;
}

.order-action-btn.pay-order:hover {
    background: #4caf50;
    color: white;
    box-shadow: 0 2px 8px rgba(76, 175, 80, 0.3);
}

/* Стили для кнопки продления срока */
.order-action-btn.extend-deadline {
    border-color: #ff9800;
    color: #ff9800;
}

.order-action-btn.extend-deadline:hover {
    background: #ff9800;
    color: white;
    box-shadow: 0 2px 8px rgba(255, 152, 0, 0.3);
}

/* Стили для кнопки подтверждения условий */
.order-action-btn.confirm-conditions {
    border-color: #2196f3;
    color: #2196f3;
}

.order-action-btn.confirm-conditions:hover {
    background: #2196f3;
    color: white;
    box-shadow: 0 2px 8px rgba(33, 150, 243, 0.3);
}

/* Стили для кнопки подтверждения условий исполнителя */
.order-action-btn.confirm-executor-conditions {
    border-color: #2196f3;
    color: #2196f3;
}

.order-action-btn.confirm-executor-conditions:hover {
    background: #2196f3;
    color: white;
    box-shadow: 0 2px 8px rgba(33, 150, 243, 0.3);
}

/* Стили для кнопки предложения условий */
.order-action-btn.propose-conditions {
    border-color: #9c27b0;
    color: #9c27b0;
}

.order-action-btn.propose-conditions:hover {
    background: #9c27b0;
    color: white;
    box-shadow: 0 2px 8px rgba(156, 39, 176, 0.3);
}

/* Bootstrap Icons стили */
.bi {
    font-size: 1.2em;
    color: #48038c;
}

/* Кнопка возврата в диалоге */
#toreturndialogbtn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(72, 3, 140, 0.1);
    text-decoration: none;
    transition: background-color 0.3s;
}

#toreturndialogbtn:hover {
    background: rgba(72, 3, 140, 0.2);
}

#toreturndialogbtn .bi {
    font-size: 1.5em;
    color: #48038c;
}

/* Кнопки в меню опций */
#dialogoptionsmenu button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: none;
    background: rgba(72, 3, 140, 0.1);
    border-radius: 50%;
    cursor: pointer;
    transition: background-color 0.3s;
}

#dialogoptionsmenu button:hover {
    background: rgba(72, 3, 140, 0.2);
}

#dialogoptionsmenu button .bi {
    font-size: 1.3em;
    color: #48038c;
}

/* Кнопка вложений */
#toattachinmessage {
    /* display: flex; */
    /* align-items: center; */
    /* justify-content: center; */
    /* width: 40px; */
    /* height: 40px; */
    /* border-radius: 50%; */
    /* background: rgba(72, 3, 140, 0.1); */
    /* cursor: pointer; */
    /* transition: background-color 0.3s; */
    /* font-size: 1.3em; */
    /* color: #48038c; */
    line-height: 26px;
    font-size: 20px;
    /* display: inline-block; */
    padding: 10px 20px;
    border-radius: 20px;
    background-color: #8A2BE2;
    color: white;
    border: none;
    cursor: pointer;
    transition: background-color 0.2s;
}

/* Меню вложений */
#messageattachoptions ul li {
    padding: 8px 5px;
    cursor: pointer;
    border-radius: 4px;
    height: 25px;
    box-sizing: content-box;
    line-height: 25px;
}

#messageattachoptions ul li:hover {
    background: rgba(72, 3, 140, 0.1);
}

/* Кнопка отправки */
#tosendmessagenonactive, #tosendmessage {
    /* display: flex; */
    /* align-items: center; */
    /* justify-content: center; */
    /* width: 40px; */
    /* height: 40px; */
    /* border-radius: 50%; */
    /* background: rgba(72, 3, 140, 0.1); */
    /* cursor: pointer; */
    /* transition: all 0.3s; */
    /* font-size: 1.3em; */
    /* color: #48038c; */
    line-height: 26px;
    font-size: 20px;
    /* display: inline-block; */
    padding: 10px 20px;
    border-radius: 20px;
    background-color: #8A2BE2;
    color: white;
    border: none;
    cursor: pointer;
    transition: background-color 0.2s;
}

#tosendmessagenonactive:hover {
    background: rgba(72, 3, 140, 0.2);
}

#tosendmessagenonactive.active {
    background: #48038c;
    color: white;
}

/* Кнопка опций в заказах */
.openordersoptions {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: none;
    background: rgba(72, 3, 140, 0.1);
    border-radius: 50%;
    cursor: pointer;
    transition: background-color 0.3s;
}

.openordersoptions:hover {
    background: rgba(72, 3, 140, 0.2);
}

.openordersoptions .bi {
    font-size: 1.1em;
    color: #48038c;
}

/* Кнопка опций в профиле */
#openuserheaderoptions {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: none;
    background: rgba(72, 3, 140, 0.1);
    border-radius: 50%;
    cursor: pointer;
    transition: background-color 0.3s;
    position: absolute;
    top: 10px;
    right: 10px;
}

#openuserheaderoptions:hover {
    background: rgba(72, 3, 140, 0.2);
}

#openuserheaderoptions .bi {
    font-size: 1.1em;
    color: #48038c;
}

/* Обновленные стили для соответствия мобильной версии */
.order {
    background: white;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    margin-bottom: 16px;
    padding: 16px;
    transition: box-shadow 0.3s;
}

.order:hover {
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
}

.orderheader {
    font-size: 18px;
    font-weight: 600;
    color: #333;
    margin-bottom: 12px;
    cursor: pointer;
    transition: color 0.3s;
}

.orderheader:hover {
    color: #48038c;
}

.ordertext {
    color: #666;
    line-height: 1.5;
    margin-bottom: 12px;
}

.order-addinfo {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 12px;
}

.order-addinfo span {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.order-addinfo span span:first-child {
    font-size: 12px;
    color: #999;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.order-addinfo span span:last-child {
    font-size: 14px;
    color: #333;
    font-weight: 500;
}

/* Стили для системных сообщений */
.message-system {
    /* background: rgba(72, 3, 140, 0.1); */
    /* border-radius: 12px; */
    /* padding: 16px; */
    /* margin: 16px 0; */
    /* text-align: center; */
}

.message-system .messagetext {
    color: #48038c;
    font-weight: 500;
}

/* Обновленные стили для диалога */
#dialogheader {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px;
    background: white;
    border-bottom: 1px solid #eee;
    border-radius: 12px 12px 0 0;
}

#dialogheader img {
    border-radius: 50%;
    object-fit: cover;
}

#dialogheadertext {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

#dialogheaderusername {
    font-weight: 600;
    color: #333;
    text-decoration: none;
}

#onlinestatustext {
    font-size: 12px;
    color: #999;
}

/* Стили для поля ввода сообщения */
#sendmessageblock {
    display: inline-block;
    width: 100%;
    box-sizing: border-box;
    height: 0;
    width: 100%;
    position: fixed;
    z-index: 100000;
    bottom: 0;
    padding: 0 10px;
    background: rgba(255, 255, 255, .3);
}

#inputmessageblock {
    flex: 1;
    padding: 10px;
    border: 1px solid #dee2e6;
    border-radius: 20px;
    outline: none;
    font-size: 14px;
    height: 46px !important;
    box-sizing: border-box;
    resize: none;
}

#inputmessageblock:focus {
    outline: none;
    border-color: #48038c;
    box-shadow: 0 0 0 2px rgba(72, 3, 140, 0.1);
}

/* Стили для сообщений */
.message-wrapper {
    margin-bottom: 16px;
}

.message {max-width: 80%;border-radius: 15px;margin: 5px 0;font-size: 14px;line-height: 1.4;word-wrap: break-word;padding: 10px 15px;color: black;box-sizing: border-box;}

@media (min-width:768px) {
    .message {
        max-width: 45%;
    }
    .messagetime {
        max-width: 45%;
    }
}
.message-from {background-color: #f0f0f0;align-self: flex-start;border-bottom-left-radius: 5px;}

.message-to {align-self: flex-end;background-color: #8A2BE2;color: white;border-bottom-right-radius: 5px;}

.messagetext {
    word-wrap: break-word;
    line-height: 1.4;
}

.messagetime {font-size: 12px;color: #6c757d;text-align: right;width: 80%;}
.message-sent .messagetime, .message-new .messagetime, .message-seen .messagetime {
    align-self: flex-end;
    text-align: right;
    
}
/* Стили для вложений */
.allmessagephoto {
    margin-top: 8px;
}

.messageimg {
    margin-top: 8px;
}

.messagecontainingparent {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.messagecontaining {
    display: flex;
    justify-content: center;
    align-items: center;
    height: auto;
}
.messagecontaining:last-child:nth-child(2n+1) {
    grid-column: 1 / span 2;
}

.messagecontaining img,
.messagecontaining video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Стили для документов */
.messagedoc {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    background: rgba(72, 3, 140, 0.1);
    border-radius: 8px;
    text-decoration: none;
    color: #333;
    margin-top: 8px;
    transition: background-color 0.3s;
}

.messagedoc:hover {
    background: rgba(72, 3, 140, 0.2);
}

.messagedoc img {
    width: 24px;
    height: 24px;
}

.docname {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.docname span:first-child {
    font-size: 12px;
    font-weight: 500;
}

.docname span:last-child {
    font-size: 10px;
    color: #666;
}

/* Стили для аудио */
audio {
    width: 100%;
    margin-top: 8px;
}

/* Стили для рейтинга в профиле */
.profileblock-info-generalratingparent {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 12px 0;
}

#generaluserrating-span {
    font-weight: 600;
    color: #48038c;
    font-size: 16px;
}

.rating-count {
    font-size: 12px;
    color: #666;
}

.no-rating {
    color: #999;
    font-style: italic;
}

/* Улучшенные стили для звезд рейтинга */
#generaluserrating {
    width: 120px;
    height: 24px;
}

#generaluserrating use {
    filter: drop-shadow(0 1px 2px rgba(0,0,0,0.1));
}

/* Адаптивность */
@media (max-width: 768px) {
    .order {
        /* margin: 8px; */
        border-radius: 8px;
    }
    
    .message {
        max-width: 85%;
    }
    
    #dialogheader {
        padding: 12px;
    }
    
    #sendmessageblock {
        padding: 12px;
    }
    
    .profileblock-info-generalratingparent {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }
    
    #generaluserrating {
        width: 100px;
        height: 20px;
    }
}

/* Стили для увлечений */
#userinterestsheader {
    font-size: 1.2em;
    font-weight: 600;
    color: #48038c;
    margin-bottom: 15px;
}

.userinterestscategory {
    margin-bottom: 20px;
}

.userinterestscategory-title {
    font-weight: 600;
    color: #333;
    margin-bottom: 10px;
    padding-bottom: 5px;
    border-bottom: 2px solid #48038c;
}

.userinterests-card {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    background: #f8f9fa;
    border: 1px solid #e9ecef;
    border-radius: 8px;
    padding: 12px;
    margin: 5px;
    min-width: 80px;
    transition: all 0.2s;
    cursor: pointer;
}

.userinterests-card:hover {
    background: #e9ecef;
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}

.userinterests-icon {
    margin-bottom: 5px;
    text-align: center;
}

.userinterests-icon img {
    width: 32px;
    height: 32px;
    object-fit: contain;
}

.userinterests-name {
    font-size: 0.9em;
    text-align: center;
    color: #333;
    font-weight: 500;
}

.no-interests {
    color: #999;
    font-style: italic;
    text-align: center;
    padding: 20px;
}

#userinterestsedit {
    background: none;
    border: none;
    cursor: pointer;
    color: #48038c;
    font-size: 0.9em;
    text-decoration: underline;
    margin-bottom: 10px;
}

#userinterestsedit:hover {
    color: #2d0256;
}

/* Стили для сетки услуг */
.services-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin-top: 15px;
}

.service-card {
    background: #fff;
    border: 1px solid #e9ecef;
    border-radius: 12px;
    overflow: hidden;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.service-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 25px rgba(0,0,0,0.15);
}

.service-main-image {
    width: 100%;
    height: 200px;
    overflow: hidden;
    position: relative;
    background: #f8f9fa;
}

.service-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.service-card:hover .service-image {
    transform: scale(1.05);
}

.service-no-image {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f8f9fa;
    color: #6c757d;
    font-size: 3rem;
}

.service-info {
    padding: 16px;
}

.service-title {
    font-size: 1.1rem;
    font-weight: 600;
    color: #333;
    margin: 0 0 8px 0;
    line-height: 1.3;
}

.service-description {
    color: #666;
    font-size: 0.9rem;
    line-height: 1.4;
    margin: 0 0 12px 0;
    display: inline-block;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.service-price {
    font-size: 1.1rem;
    font-weight: 600;
    color: #48038c;
    margin: 0 0 8px 0;
}

.service-delivery {
    font-size: 0.85rem;
    color: #666;
    margin: 0 0 16px 0;
    display: flex;
    align-items: center;
    gap: 4px;
}

.service-delivery i {
    color: #48038c;
}

.service-location {
    color: #999;
}

.service-actions {
    display: flex;
    gap: 8px;
    margin-bottom: 8px;
}

.service-actions .btn {
    flex: 1;
    font-size: 0.85rem;
    padding: 6px 12px;
}

.service-admin-actions {
    display: flex;
    gap: 4px;
    justify-content: flex-end;
}

.service-admin-actions .btn {
    font-size: 0.8rem;
    padding: 4px 8px;
}

/* Адаптивность для мобильных устройств */
@media (max-width: 768px) {
    .services-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }
    
    .service-main-image {
        height: 180px;
    }
    
    .service-info {
        padding: 12px;
    }
    
    .service-title {
        font-size: 1rem;
    }
    
    .service-description {
        font-size: 0.85rem;
    }
    
    .service-actions {
        flex-direction: column;
    }
    
    .service-actions .btn {
        width: 100%;
    }
}

#freelance-menu-main ul i {
    margin-right: 12px;
    font-size: 20px;
    line-height: 20px;
}

/* Стили для системы споров */
.open-dispute {
    background: #dc3545 !important;
    color: white !important;
    border: 1px solid #dc3545 !important;
}

.open-dispute:hover {
    background: #c82333 !important;
    border-color: #c82333 !important;
}

/* Модальное окно открытия спора */
#open-dispute-modal-parent {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: center;
}

#open-dispute-modal {
    background: white;
    border-radius: 15px;
    max-width: 600px;
    width: 90%;
    max-height: 90%;
    overflow-y: auto;
    position: relative;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

#open-dispute-modal-header {
    background: #48038c;
    color: white;
    padding: 20px;
    border-radius: 15px 15px 0 0;
    position: relative;
}

#open-dispute-modal-header h3 {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
}

#close-open-dispute-modal {
    position: absolute;
    top: 15px;
    right: 15px;
    width: 24px;
    height: 24px;
    cursor: pointer;
    stroke: white;
    transition: opacity 0.3s;
}

#close-open-dispute-modal:hover {
    opacity: 0.7;
}

#open-dispute-modal-content {
    padding: 25px;
}

.dispute-warning {
    background: #fff3cd;
    border: 1px solid #ffeaa7;
    color: #856404;
    padding: 15px;
    border-radius: 8px;
    margin-bottom: 20px;
    line-height: 1.5;
}

.dispute-warning strong {
    color: #8b4513;
}

#open-dispute-modal-content label {
    display: block;
    margin-bottom: 8px;
    font-weight: 600;
    color: #333;
}

.required {
    color: #dc3545;
}

#open-dispute-modal-content select,
#open-dispute-modal-content textarea {
    width: 100%;
    padding: 12px;
    border: 2px solid #e0e0e0;
    border-radius: 8px;
    font-size: 14px;
    margin-bottom: 15px;
    transition: border-color 0.3s;
    font-family: inherit;
    resize: vertical;
}

#open-dispute-modal-content select:focus,
#open-dispute-modal-content textarea:focus {
    outline: none;
    border-color: #48038c;
    box-shadow: 0 0 0 3px rgba(72, 3, 140, 0.1);
}

#open-dispute-modal-content textarea {
    min-height: 120px;
    line-height: 1.5;
}

.dispute-modal-info {
    background: #f8f9fa;
    padding: 15px;
    border-radius: 8px;
    margin: 20px 0;
    border-left: 4px solid #48038c;
}

.dispute-modal-info h4 {
    margin: 0 0 10px 0;
    color: #48038c;
    font-size: 16px;
}

.dispute-modal-info ul {
    margin: 0;
    padding-left: 20px;
    color: #555;
}

.dispute-modal-info li {
    margin-bottom: 5px;
    line-height: 1.4;
}

.dispute-modal-buttons {
    display: flex;
    gap: 15px;
    justify-content: flex-end;
    margin-top: 25px;
    padding-top: 20px;
    border-top: 1px solid #e0e0e0;
}

#cancel-dispute-btn,
#submit-dispute-btn {
    padding: 12px 24px;
    border: none;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s;
}

#cancel-dispute-btn {
    background: #6c757d;
    color: white;
}

#cancel-dispute-btn:hover {
    background: #5a6268;
}

#submit-dispute-btn {
    background: #dc3545;
    color: white;
}

#submit-dispute-btn:hover {
    background: #c82333;
}

/* Статус спора в заказе */
.dispute-status-indicator {
    background: #ffebee;
    color: #c62828;
    padding: 8px 15px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 10px 0;
    display: inline-block;
    border: 2px solid #ffcdd2;
}

.dispute-status-indicator.resolved {
    background: #e8f5e8;
    color: #2e7d32;
    border-color: #c8e6c9;
}

/* Адаптивность для мобильных */
@media (max-width: 768px) {
    #open-dispute-modal {
        width: 95%;
        margin: 10px;
    }
    
    #open-dispute-modal-content {
        padding: 20px;
    }
    
    .dispute-modal-buttons {
        flex-direction: column;
    }
    
    #cancel-dispute-btn,
    #submit-dispute-btn {
        width: 100%;
        margin-bottom: 5px;
    }
    
    .dispute-modal-info {
        padding: 12px;
    }
    
    .dispute-modal-info ul {
        padding-left: 15px;
    }
}

/* Анимации */
@keyframes fadeIn {
    from {
        opacity: 0;
        transform: scale(0.95);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

#open-dispute-modal-parent[style*="block"] #open-dispute-modal {
    animation: fadeIn 0.3s ease-out;
}

/* Дополнительные стили для кнопки открытия спора */
.order-action-btn.open-dispute {
    background: linear-gradient(135deg, #dc3545, #c82333);
    color: white;
    border: 2px solid #dc3545;
    font-weight: 600;
    position: relative;
    overflow: hidden;
}

.order-action-btn.open-dispute::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: left 0.5s;
}

.order-action-btn.open-dispute:hover::before {
    left: 100%;
}

.order-action-btn.open-dispute:hover {
    background: linear-gradient(135deg, #c82333, #a71e2a);
    border-color: #c82333;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(220, 53, 69, 0.3);
}

/* Стили для секции статуса спора */
.dispute-status-section {
    margin: 20px 0;
    padding: 15px;
    background: #f8f9fa;
    border-radius: 8px;
    border-left: 4px solid #dc3545;
}

.dispute-status-section .pagesubheader {
    margin-bottom: 15px;
    color: #dc3545;
    font-weight: 600;
}

.dispute-info {
    margin-top: 10px;
    color: #555;
    line-height: 1.5;
}

.dispute-info p {
    margin: 0;
}

/* Статусы разрешенного спора */
.dispute-status-section .dispute-status-indicator.resolved {
    border-left-color: #28a745;
}

.dispute-status-section .dispute-status-indicator.resolved + .dispute-info {
    color: #155724;
}

div#freelance-menu-parent.menu-open {
    display: block;
}

/* Стили для кнопки выхода */
#freelance-menu-logout {
    margin-top: 20px;
    padding: 15px 20px;
    border-top: 1px solid #e2e8f0;
}

.logout-btn {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 16px;
    background: linear-gradient(135deg, #6c757d, #5a6268);
    color: white;
    text-decoration: none;
    border-radius: 8px;
    font-weight: 600;
    font-size: 14px;
    transition: all 0.3s ease;
    border: none;
    cursor: pointer;
    width: 100%;
    justify-content: center;
    box-sizing: border-box;
    color: white !important;
}

.logout-btn:hover {
    background: linear-gradient(135deg, #5a6268, #495057);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(108, 117, 125, 0.3);
    color: white;
    text-decoration: none;
}

.logout-btn i {
    font-size: 16px;
    color: white;
}

/* Адаптивность для кнопки выхода */
@media (max-width: 768px) {
    #freelance-menu-logout {
        margin-top: 15px;
        padding: 10px 15px;
    }
    
    .logout-btn {
        padding: 10px 14px;
        font-size: 13px;
    }
}

/* Мобильное меню */
@media (max-width: 768px) {
    #freelance-menu-parent {
        position: fixed;
        top: 0;
        left: -100%;
        width: 100%;
        height: 100vh;
        background: rgba(0, 0, 0, 0.5);
        z-index: 9999;
        transition: left 0.3s ease;
        overflow-y: auto;
    }
    
    #freelance-menu-parent.menu-open {
        left: 0;
    }
    
    #freelance-menu-child {
        position: absolute;
        top: 0;
        left: 0;
        width: 280px;
        height: 100%;
        background: white;
        box-shadow: 2px 0 10px rgba(0, 0, 0, 0.1);
        overflow-y: auto;
    }
    
    #freelance-usermenu {
        padding: 20px;
        border-bottom: 1px solid #e2e8f0;
    }
    
    #freelance-menu-main {
        padding: 15px 20px;
    }
    
    #freelance-menu-main ul {
        margin: 0;
        padding: 0;
        list-style: none;
    }
    
    #freelance-menu-main li {
        margin-bottom: 10px;
    }
    
    #freelance-menu-main a {
        display: flex;
        align-items: center;
        gap: 12px;
        /* padding: 12px 16px; */
        color: #2d3748;
        text-decoration: none;
        border-radius: 8px;
        transition: all 0.2s ease;
        font-weight: 500;
    }
    
    #freelance-menu-main a:hover {
        background: #f7fafc;
        color: #7b2ff2;
    }
    
    #freelance-menu-main .menulink-active a {
        /* background: #7b2ff2; */
        color: white;
    }
    
    #freelance-menu-main .menulink-active a:hover {
        background: #5a1fd9;
    }
    
    .freelance-menu-subheader {
        display: block;
        font-size: 12px;
        font-weight: 600;
        color: #718096;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        margin-bottom: 15px;
        padding: 0 16px;
    }
}

/* Стили для кнопок авторизации */
.auth-buttons {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 20px;
    width: 100%;
}

.auth-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 20px;
    border-radius: 12px;
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
    transition: all 0.3s ease;
    border: 2px solid transparent;
    cursor: pointer;
    width: 100%;
    text-align: center;
}

.register-btn {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    box-shadow: 0 4px 15px rgba(102, 126, 234, 0.4);
}

.register-btn:hover {
    background: linear-gradient(135deg, #5a6fd8 0%, #6a4190 100%);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(102, 126, 234, 0.6);
    color: white;
    text-decoration: none;
}

.login-btn {
    background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
    color: white;
    box-shadow: 0 4px 15px rgba(240, 147, 251, 0.4);
}

.login-btn:hover {
    background: linear-gradient(135deg, #e085e8 0%, #e04d5e 100%);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(240, 147, 251, 0.6);
    color: white;
    text-decoration: none;
}

.auth-btn i {
    font-size: 16px;
}

/* Адаптивность для кнопок авторизации */
@media (max-width: 768px) {
    .auth-buttons {
        margin-top: 15px;
        gap: 10px;
    }
    
    .auth-btn {
        padding: 10px 16px;
        font-size: 13px;
    }
    
    .auth-btn i {
        font-size: 14px;
    }
}

/* Стили для портфолио */
.portfolio-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 20px;
    margin-top: 20px;
}

.portfolio-item {
    background: white;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    border: 1px solid #e2e8f0;
}

.portfolio-item:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

.portfolio-image {
    width: 100%;
    height: 180px;
    object-fit: cover;
    background: #f7fafc;
}

.portfolio-no-image {
    width: 100%;
    height: 180px;
    background: #f7fafc;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #cbd5e0;
}

.portfolio-no-image i {
    font-size: 48px;
    opacity: 0.5;
}

.portfolio-content {
    padding: 16px;
}

.portfolio-title {
    font-weight: 600;
    font-size: 16px;
    color: #2d3748;
    margin-bottom: 6px;
    line-height: 1.4;
}

.portfolio-hobby {
    font-size: 12px;
    color: #7b2ff2;
    font-weight: 500;
    margin-bottom: 8px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.portfolio-description {
    color: #718096;
    font-size: 14px;
    line-height: 1.5;
    margin-bottom: 12px;
}

.portfolio-date {
    color: #a0aec0;
    font-size: 12px;
    font-weight: 500;
}

/* Стили для навыков */
.skills-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 20px;
}

.skill-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background: linear-gradient(135deg, #7b2ff2 0%, #9f7aea 100%);
    color: white;
    border-radius: 20px;
    font-size: 14px;
    font-weight: 500;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(123, 47, 242, 0.3);
}

.skill-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(123, 47, 242, 0.4);
}

.skill-item i {
    font-size: 16px;
    color: #e2e8f0;
}

.skill-name {
    white-space: nowrap;
}

.skill-hobby {
    font-size: 11px;
    opacity: 0.8;
    margin-left: 4px;
    font-weight: 400;
}

/* Стили для пустых секций */
.no-portfolio,
.no-skills {
    text-align: center;
    padding: 40px 20px;
    color: var(--text-secondary);
}

.no-portfolio p,
.no-skills p {
    margin: 10px 0;
}

.no-portfolio p:first-child,
.no-skills p:first-child {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--text-primary);
}

.no-portfolio p:last-child,
.no-skills p:last-child {
    font-size: 0.95rem;
    color: var(--text-secondary);
    line-height: 1.5;
}

/* Стили для кнопок "Показать все" */
.show-all-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: linear-gradient(135deg, #7b2ff2 0%, #9f7aea 100%);
    color: white;
    border: none;
    border-radius: 25px;
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(123, 47, 242, 0.3);
}

.show-all-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(123, 47, 242, 0.4);
    color: white;
    text-decoration: none;
}

.show-all-btn i {
    font-size: 16px;
}

/* Адаптивность для портфолио и навыков */
@media (max-width: 768px) {
    .portfolio-grid {
        grid-template-columns: 1fr;
        gap: 16px;
        margin-top: 16px;
    }
    
    .portfolio-item {
        border-radius: 8px;
    }
    
    .portfolio-content {
        padding: 12px;
    }
    
    .portfolio-title {
        font-size: 15px;
    }
    
    .portfolio-description {
        font-size: 13px;
    }
    
    .skills-grid {
        gap: 10px;
        margin-top: 16px;
    }
    
    .skill-item {
        padding: 6px 12px;
        font-size: 13px;
    }
    
    .skill-item i {
        font-size: 14px;
    }
    
    .show-all-btn {
        padding: 8px 16px;
        font-size: 13px;
    }
    
    .show-all-btn i {
        font-size: 14px;
    }
}

@media (max-width: 480px) {
    .portfolio-grid {
        gap: 12px;
    }
    
    .portfolio-image {
        height: 150px;
    }
    
    .portfolio-content {
        padding: 10px;
    }
    
    .skills-grid {
        gap: 8px;
    }
    
    .skill-item {
        padding: 5px 10px;
        font-size: 12px;
    }
    
    .show-all-btn {
        padding: 6px 12px;
        font-size: 12px;
    }
    
    .show-all-btn i {
        font-size: 12px;
    }
    
    .no-portfolio,
    .no-skills {
        padding: 30px 15px;
    }
    
    .no-portfolio p:first-child,
    .no-skills p:first-child {
        font-size: 1rem;
    }
    
    .no-portfolio p:last-child,
    .no-skills p:last-child {
        font-size: 0.9rem;
    }
}