
.scrollable {
	height: 100%;
	overflow-y: scroll;
}

ul.collection.menu {
    margin-top: 40px;
}

ul.collection.menu > li {
    line-height: 20px;
    vertical-align: top;
    height: 20px;
}

.collection { margin-bottom: 20px; }

.collection > li { margin-bottom: 10px; }

.collection > *:not(.right) {
    float: left;
    vertical-align: top;
    margin-right: 10px;
}

.collection > span:has(+ div) {
    top: 8px;
}

.collection.menu > li { margin-bottom: 20px; }

.collection.pips > li { margin-right: 20px; }

.collection > .right {
    margin-left: 10px;
    float: right;
}

.collection:after { content: "."; display:block; clear:both; height:0; visibility:hidden; }

header:has(+ section),
header:has(+ form) { margin-bottom: 20px; }

/* ul.pics.collection {
    width: calc(100% + 20px);
}

ul.pics.collection > li {
    border: 1px solid var(--bordercolor);
    width: calc((100% / 3) - 22px);
    padding-top: 19%;
    margin-right: 20px;
    margin-bottom: 20px;
    background-color: var(--imageback);
    background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
} */

.button { 
    padding: 8px 20px; 
    background-color: var(--panelcolor); 
    color: var(--textcolor); 
    border-radius: 4px; 
    border: 2px solid var(--bordercolor);
    cursor: pointer;
}

.button.cancel,
.button.red { color: #fff; background-color: #f00;}

.button.ok,
.button.green { color: #fff; background-color: #40c840;}

.button:hover { 
    background-color: #000; 
    color: #fff; 
    border-radius: 4px; 
}

.button > span.icon {
    margin-right: 5px;
    margin-left: -5px;
}

.button:hover > span.icon {
    -webkit-filter: invert(100%); filter: invert(100%);
}

span.iconholder {
    background-color: var(--panelcolor);
}

span.iconholder + span {
    margin-top: 20px;
    margin-left: 10px;
}

span.iconholder > span.icon.small {
    margin: 0px;
    padding: 10px;
    overflow: hidden;
    width: 30px;
    height: 30px;
}


ul.concatlist {
    margin-left: -20px;
    width: calc(100% + 40px);
}

ul.concatlist > li {
    padding: 20px 20px;
    border-bottom: 0.8px solid var(--bordercolor);
    width: calc(100% - 40px);
    margin-bottom: 0px !important;
    overflow: hidden;
}

ul.concatlist > li:last-child {
    border-bottom: none;
}

ul.concatlist > li > *:first-of-type {
    margin-bottom: 0px o !important;
}



*[data-component="stepshow"].tabs > ul.collection {
    margin-bottom: 40px;
}



.upload_image {
	position: relative;
	width: 120px;
	height: 120px;
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-radius:2px; -moz-border-radius:2px; -webkit-border-radius:2px;
	background-color: #f9f9f9;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	margin-bottom: 20px;
}

.hero.image {
    width: 160px;
    height: 160px;
    background-color: var(--shadowcolor);
    border-radius: 80px;
    background-size: cover;
}

.hero.image + span { top: -30px; }

.advantages {
    margin-bottom: 40px;
}

.advantages > ul.split > li {    
    border: 0.8px solid var(--bordercolor);
    background-color: var(--backgroundcolor);
    border-radius: var(--rounding);
    box-shadow:0px 3px 10px rgba(0,0,0,.1); 
    -moz-box-shadow:0px 3px 10px rgba(0,0,0,.1); 
    -webkit-box-shadow:0px 3px 10px rgba(0,0,0,.1);
    min-height: 180px;
}

.advantages > ul.split > li > span {
    width: calc(100% - 40px);
    margin: 20px 20px;
}

.advantages > ul.split > li > span > span { width: 100%; }

.tfaentry.collection {
    position: relative;
    display: inline-flex;
    width: auto;
    left: 50%;
    transform: translate(-50%, 0%);
}

.tfaentry.collection > li > input {
    font-size: 40px;
    text-align: center;
    font-family: Helvetica,freesans,sans-serif;
}

.tfaentry.collection > li {
    margin-right: 10px;
    border-radius: 4px;
    border: 1px solid var(--bordercolor);
}

.tfaentry.collection > li:last-child {
    margin-right: 0px;
}

.tfaentry.collection > li:has(> input:focus) {
    transform: scale(1.1);
}


#mysearchoccupation > ul.list > li {
    margin-bottom: 10px;

}

span.fitbar {
    position: relative;
    display: block;
    width: 100%;
    margin-top: 10px;
    margin-bottom: 10px;
}

span.fitbar > span.bar {
    position: relative;
    margin-top: 6px;
    height: 8px; 
    background: var(--bordercolor); 
    border-radius: 4px; 
}

span.fitbar > span.bar > span.inner {
    position: absolute; 
    background-color: #66df66; 
    left: 0px; 
    top: 0px; 
    height: 100%; 
    border-radius: 6px;
}

ul.joblist > li > span > span {
    position: relative;
    vertical-align: top;    
}

ul.joblist > li > span > span + span {
    position: relative;
    margin-left: 10px;
}

ul.joblist > li:after {
    content: "."; display:block; clear:both; height:0; visibility:hidden;
}

ul.joblist > li > span {
    position: relative;
    vertical-align: top;
    float: left;
}

ul.joblist > li > span {
    margin-left: 10px;
}

ul.joblist > li > span:first-of-type {
    margin-left: 0px;
}

ul.hoverpanel > li {
    min-width: 120px;
    width: calc(100% - 20px);
    padding: 12px 10px 10px;
    border: 1px solid rgba(0,0,0,0.1);
}

ul.hoverpanel > li:not(.static) {
    background-color: var(--hoverpanelback);
    border-radius: 10px;
    box-shadow:0px 0px 3px rgba(0,0,0,.05); 
    -moz-box-shadow:0px 0px 3px rgba(0,0,0,.05); 
    -webkit-box-shadow:0px 0px 3px rgba(0,0,0,.05);
}

ul.hoverpanel > li.static {
    border-color: transparent;
}

ul.hoverpanel > li:not(.static):not(.selected):hover {
    background-color: var(--hoverpanelback_hover);
    border-color: rgba(0,0,0,0.2);
    transition: transform .3s;
    transform: scale(1.025);
    box-shadow:0px 3px 10px rgba(0,0,0,.1); 
    -moz-box-shadow:0px 3px 10px rgba(0,0,0,.1); 
    -webkit-box-shadow:0px 3px 10px rgba(0,0,0,.1);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

div[data-component='stepshow'].tabs > ul.pips > li {
    cursor: pointer;
}

div[data-component='stepshow'].tabs > ul.pips > li > *:first-of-type {
    border-bottom: 5px solid var(--bannercolor);
}

div[data-component='stepshow'].tabs > ul.pips > li:not(.selected) > *:first-of-type {
    border-bottom-color: transparent;
}

div[data-component='stepshow'].tabs > ul.steps > li:not(.selected) {
    display: none;
}


span.banner {
    position: relative;
    overflow: hidden;
    width: 100%;
    padding-top: 45%;
    display: block;
    border-radius: 10px;
    margin-bottom: 50px;
    border: 1px solid #d2d2d2;
    box-shadow:0px 3px 10px rgba(0,0,0,.1); 
    -moz-box-shadow:0px 3px 10px rgba(0,0,0,.1); 
    -webkit-box-shadow:0px 3px 10px rgba(0,0,0,.1);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

span.banner > header {
    position: absolute;
    bottom: 20px;
    left: 20px;
}

span.banner > header > .image {
    width: 200px;
    height: 200px;
}

span.banner > div.rotator {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
}

span.banner > div.rotator > ul.steps {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
}

span.banner > div.rotator > ul.steps > li:not(.selected) {
    display: none;
}

span.banner > div.rotator > ul.pips {
    position: absolute;
    right: 20px;
    top: 20px;
}

span.banner > div.rotator > ul.pips > li {
    position: relative;
    width: 20px;
    height: 20px;
    display: inline-block;
    margin-right: 2px;
}

span.banner > div.rotator > ul.pips > li:last-child {
    margin-right: 0px;
}

span.banner > div.rotator > ul.steps > li {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

span.banner > div.rotator > ul.pips > li {
    background-image: url('/images/icons/icon_pipopen.png');
    background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}

span.banner > div.rotator > ul.pips > li.selected {
    background-image: url('/images/icons/icon_pipfull.png');
}

.bubble {
    background-color: var(--bubbledefaultcolor);
    vertical-align: top;
    text-transform: capitalize;
}

.bubble > span {
    line-height: 20px;
    vertical-align: top;
    height: 20px;
}

.bubble > span.icon {
    margin-left: -5px !important;
    margin-right: 5px;
}

.bubble:has(> input[type=radio]),
.bubble:has(> input[type=checkbox]) {
    line-height: 20px;
    height: 20px;
    margin-bottom: 5px;
    display: inline-block;
}

.bubble:has(> input[type=radio]:checked),
.bubble:has(> input[type=checkbox]:checked) {
    background-color: var(--selectedcolor);
    color: #fff;
}

.bubble > input[type=checkbox],
.bubble > input[type=radio] {
    display: none;
}

.bubble > input[type=checkbox] + span,
.bubble > input[type=radio] + span {
    top: 0px;
    line-height: inherit;
    height: inherit;
    display: contents;
}


.bubble > span.score {
    min-width: 6px;
    height: 10px;
    margin-left: 5px;
    border-radius: 10px;
    vertical-align: middle;
    /* margin-top: -4px; */
    margin-right: -8px;
    padding: 5px 6px;
    font-size: 10px;
    background-color: #fff;
    text-align: center;
    color: #000;
    line-height: 10px;
    position: relative;
    top: 0px;
}

ul.joblist > li > span > span.bubble {
    margin-top: -10px;
    top: 4px;
}

/* span.bubble[data-status="price"] {
    background-color: #fff;
} */

span.bubble[data-status="sent"],
span.bubble[data-status="price"],
span.bubble[data-status="hasskill"],
span.bubble[data-status="submitted"],
span.bubble[data-status="published"],
span.bubble[data-status="paid"] {
    background-color: #4fba4f;
    color: #fff;
}

span.bubble[data-status="suspended"],
span.bubble[data-status="refunded"] {
    background-color: #ff8822;
    color: #fff;
}

span.bubble[data-status="received"],
span.bubble[data-status="esco"],
span.bubble[data-status="pending"] {
    background-color: #0e5f93;
    color: #fff;
}

span.bubble[data-status="closed"],
span.bubble[data-status="rejected"],
span.bubble[data-status="cancelled"],
span.bubble[data-status="expired"] {
    background-color: #f00;
    color: #fff;
}

ul.selectable li:not(.panelholder).selected {
    background-color: #218265;
}

ul.selectable li:not(.panelholder).selected span {
    color: #fff;
}

ul.selectable li:not(.panelholder).selected span.bubble {
    color: #000;
}

div.breadcrumb {
    margin-bottom: 20px;
}

section.page {
    width: 100%;
    position: relative;
}

.pics.small {
    margin-bottom: 5px;
}

.pics.small > li {
    margin-right: 20px;
    width: 80px;
    height: 80px;
    margin-bottom: 5px;
}

.pics.small > li > .image {
    width: 100%;
    height: 100%;
    border-radius: 5px;
    overflow: hidden;
    background-size: cover;
    box-shadow: 0px 3px 10px rgba(0,0,0,0.2);
    -moz-box-shadow: 0px 3px 10px rgba(0,0,0,0.2);
    -webkit-box-shadow: 0px 3px 10px rgba(0,0,0,0.2);
}

*[data-emptype] {
    position: relative;
    padding-top: 20px;
    padding-bottom: 10px;
    margin-top: 5px;
    margin-bottom: 5px;
}

.hashed {
    background: repeating-linear-gradient(-45deg, var(--hashcolor_gray), var(--hashcolor_gray) 10px, transparent 10px, transparent 20px);
}

*[data-emptype='gap'] {
    background: repeating-linear-gradient(-45deg, var(--hashcolor), var(--hashcolor) 10px, transparent 10px, transparent 20px);
    border-radius: 5px;
    margin-bottom: 10px !important;
    padding-bottom: 20px;
}

li:has(> *[data-emptype]) {
    border-bottom: 1px solid var(--bordercolor);
    display: inline-block;
}

li:first-child:has(> *[data-emptype]) {
    margin-top: -10px;
}

li:last-child:has(> *[data-emptype]) {
    margin-bottom: -10px;
    border-bottom: none;
}

.panelholder.container {
    min-height: 100px;
}

.panelholder {
    box-shadow: var(--shadowcolor) 0px 1px 8px 0px;
    -moz-box-shadow: var(--shadowcolor) 0px 1px 8px 0px;
    -webkit-box-shadow: var(--shadowcolor) 0px 1px 8px 0px;
    border: 0.8px solid var(--bordercolor);
}

.panelholder span.titlebar,
.container span.titlebar {
    width: 100%;
    color: var(--textcolor);
    padding: 8px 0px;
    line-height: 20px;
    background-color: var(--titlebarcolor);
    border-bottom: 0.8px solid var(--bordercolor);
}

span.titlebar ~ span.icon.avatar {
    position: absolute; 
    right: 16px; 
    top: 16px; 
    width: 64px !important; 
    height: 64px !important; 
    display: block; 
    border: 5px solid #fff; 
    background-color: var(--backgroundcolor);
    border-radius: 37px;
}

.panelholder span.titlebar span,
.container span.titlebar span {
    width: calc(100% - 40px);
    margin: 6px 20px 4px;
    font-family: Arial,Helvetica,freesans,sans-serif;
    font-weight: bold;
}

.panelholder span.titlebar:has(> .collection.pips) {
    height: 30px;
}

.panelholder[data-component="stepshow"] span.titlebar .collection.pips { 
    position: absolute;
    display: block;
    margin-bottom: 0px !important;
    height: 42px;
    left: 0px;
    top: 5px;
    width: 100%;
    overflow: hidden;
}

.panelholder[data-component="stepshow"] span.titlebar .collection.pips > li {
    position: relative;
    height: calc(100% + 2px);
    margin-right: 0px;
}

.panelholder span.titlebar .collection.pips > li > span {
    position: relative;
    transform: translate(0, 3px);
}

.panelholder[data-component="stepshow"] span.titlebar .collection.pips > li:first-child {
    margin-left: 20px;
}

.panelholder[data-component="stepshow"] span.titlebar .collection.pips > li.selected {
    background-color: var(--panelcolor);
    border-radius: var(--rounding) var(--rounding) 0px 0px;
    border-left: 0.8px solid var(--bordercolor);
    border-right: 0.8px solid var(--bordercolor);
    border-top: 0.8px solid var(--bordercolor);
}

.panelholder[data-component="stepshow"] span.titlebar .collection.pips > li:not(.selected) > span.title {
    font-weight: normal;
}

.panelholder span.titlebar .collection,
.container span.titlebar .collection { margin-bottom: 0px !important; }

.panelholder span.titlebar span.collection.right > span:last-of-type,
.container span.titlebar span.collection.right > span:last-of-type { margin-right: 0px;}

.panelholder.selected,
.panelholder.highlight {
    border-color: var(--highlightcolor);
}

.panelholder.selected span.titlebar,
.panelholder.highlight span.titlebar {
    background-color: var(--highlightcolor);
    color: #fff;
}

.panelholder[data-component="stepshow"].selected span.titlebar ul.pips li.selected > span.title,
.panelholder[data-component="stepshow"].highlight span.titlebar ul.pips li.selected > span.title {
    color: var(--highlightcolor);
}



.panelholder.color_male {
    border-color: #24f;
}

.panelholder.color_male span.titlebar {
    background-color: #24f;
    color: #fff;
}

.panelholder.color_female {
    border-color: var(--highlightcolor);
}

.panelholder.color_female span.titlebar {
    background-color: var(--highlightcolor);
    color: #fff;
}

.panelholder[data-panelcolor="light"] {
    border-color: rgba(0,0,0,0.05);
}

.panelholder[data-panelcolor="light"] span.titlebar {
    background-color: rgba(0,0,0,0.05);
    color: #000;
}

span.icon.small[data-lang=] { background-image: url('/images/flags/252.png'); }
span.icon.small[data-lang='en'] { background-image: url('/images/flags/237.png'); }
span.icon.small[data-lang='de'] { background-image: url('/images/flags/87.png'); }
span.icon.small[data-lang='nl'] { background-image: url('/images/flags/158.png'); }
span.icon.small[data-lang='es'] { background-image: url('/images/flags/209.png'); }
span.icon.small[data-lang='fr'] { background-image: url('/images/flags/79.png'); }
span.icon.small[data-lang='it'] { background-image: url('/images/flags/113.png'); }
span.icon.small[data-lang='pt'] { background-image: url('/images/flags/182.png'); }
span.icon.small[data-lang='ru'] { background-image: url('/images/flags/198.png'); }
span.icon.small[data-lang='zh'] { background-image: url('/images/flags/46.png'); }
span.icon.small[data-lang='ja'] { background-image: url('/images/flags/116.png'); }
span.icon.small[data-lang='ar'] { background-image: url('/images/flags/196.png'); }

ul.split.pics > li {
    box-shadow: var(--shadowcolor) 0px 1px 8px 0px;
    -moz-box-shadow: var(--shadowcolor) 0px 1px 8px 0px;
    -webkit-box-shadow: var(--shadowcolor) 0px 1px 8px 0px;
    border: 0.8px solid var(--bordercolor);
    background-color: var(--panelcolor);
    aspect-ratio: 1/1;
    height: auto;    
    border-radius: var(--rounding);
}

ul.pics > li > span.image {
    overflow: hidden;
    border-radius: var(--rounding);
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    background-size: cover;
    position: relative;
    margin: 1px;
    display: block;
}


ul.launch > li {
    border: 0.8px solid var(--bordercolor);
    background-color: var(--panelcolor);
    border-radius: var(--rounding);
    box-shadow: var(--shadowcolor) 0px 1px 8px 0px;
    -moz-box-shadow: var(--shadowcolor) 0px 1px 8px 0px;
    -webkit-box-shadow: var(--shadowcolor) 0px 1px 8px 0px;
    width: 100%;
    height: auto;
    display: block;
    margin-bottom: 40px;
}

ul.launch > li > section.inset {
    margin: 40px;
    width: calc(100% - 80px);
}

ul.launch > li > section.inset > aside {
    height: auto;
    aspect-ratio: 4/3;
    background-color: rgba(0, 0, 0, 0.1);
    border-radius: var(--rounding);
}

ul.launch > li > section.inset > section > p {
    margin-bottom: 10px;
    font-size: 1.2em;
}

section[data-component="panels"] > ul > li {
    margin-bottom: 20px;
}