/*

    #publish-form
    #advert-rates
    .add_area
    .image-input
    .ajax-image-input
    button.image-delete
    .add-categories
    #jccie*
    #job*
    .tinymce-hidden
    Messages 
    Enquiries
    .popped*
    #overlay
    admin
    text case
    print media

*/

body.mch-waiting {
    cursor: wait;
    }

/* ------------------------ RESET-------------------------- */

.generic-content-container {
    margin: 0;
    border: none;
    font-size: 16px;
    color: #555;
    }

.generic-content-container * {
    margin: 0;
    border: none;
    padding: 0;
	font-size: 100%;
	font-family: inherit;
    color: inherit;
	}

/* http://stackoverflow.com/questions/17408815/fieldset-resizes-wrong-appears-to-have-unremovable-min-width-min-content */
.generic-content-container fieldset {
    display: block;
    min-width: 0;
    }
@-moz-document url-prefix() {
    .generic-content-container fieldset {
        display: table-cell;
    }
}

/* ------------------------- GENERAL ---------------------- */

.generic-content-container .hidden,
.generic-content-container .JS {
    display: none !important;
    }

.generic-content-container legend {
    padding-left: 5px;
    padding-right: 10px;
    font-size: 1rem;
    font-weight: bold;
    color: #666;
    }
    
.ajax-image-input legend {
    padding-left: 0;
}    

.generic-content-container legend .extended-legend {
    font-weight: normal;
    }

.generic-content-container label {
    display: block;
    margin: 0.3em 0 0.2em;
    font-weight: bold;
    color: #666;
    }

.generic-content-container label.radio-label {
    display: inline-block;
    margin-right: 1em;
    font-weight: normal;
    }

.generic-content-container label.radio-label,
.generic-content-container label.radio-label input {
    vertical-align: middle;
    }

.generic-content-container .radio-or {
    color: #999;
    font-style: italic;
    }

.generic-content-container .optional-label,
.generic-content-container .format-label,
.generic-content-container .char-count {
    font-size: 0.9em;
    font-weight: normal;
    }

.generic-content-container .char-count {
    display: block;
    }

.generic-content-container abbr {
    text-transform: none;
    }

.generic-content-container input,
.generic-content-container button:not(.tox-tbtn),
.generic-content-container textarea,
.generic-content-container select,
.generic-content-container a.button,
.generic-content-container label.button,
.generic-content-container .date-picker-control:link {
    box-sizing: border-box;
    display: inline-block;
    max-width: 100%;
    margin: 0.3em 0;
    border: solid 1px #bbb;
    border-radius: 0.5em;
    padding: 0.5em;
    background: #fefefe;
    color: #222;
    line-height: inherit;
    font-weight: normal;
    text-decoration: none;
    }

.generic-content-container input[type=submit],
.generic-content-container input[type=button],
.generic-content-container button:not(.tox-tbtn),
.generic-content-container a.button,
.generic-content-container label.button,
.generic-content-container .date-picker-control:link {
    /* max-height: 2.2em; */
    padding-left: 1.5em;
    padding-right: 1.5em;
    line-height: 1.15;
    background: #ffc;
    }

.generic-content-container input[type=submit]:hover,
.generic-content-container input[type=button]:hover,
.generic-content-container button:hover:not(.tox-tbtn),
.generic-content-container a.button:hover,
.generic-content-container label.button:hover,
.generic-content-container .date-picker-control:link:hover,
.generic-content-container input[type=submit]:focus,
.generic-content-container input[type=button]:focus,
.generic-content-container button:focus:not(.tox-tbtn),
.generic-content-container a.button:focus,
.generic-content-container label.button:focus,
.generic-content-container .date-picker-control:link:focus {
    background: #ffa;
    border-color: black;
    color: #000;
    outline: none;
    }

.generic-content-container input:not([type=checkbox]):not([type=radio]):focus,
.generic-content-container textarea:focus,
.generic-content-container select:focus {
    outline: none;
    border-color: black;
    }

.generic-content-container input[type=checkbox]:focus,
.generic-content-container input[type=radio]:focus {
    outline: dotted 1px #444;
    }

.generic-content-container input.checkbox,
.generic-content-container input.checkbox + label {
    margin: 0;
    display: inline-block;
    vertical-align: middle;
    font-weight: normal;
    }

.generic-content-container input.checkbox + label {
    max-width: calc(100% - 2em);
    margin-left: 0.5em;
    }

.generic-content-container :disabled,
.generic-content-container input[type=checkbox]:disabled + label {
    opacity: 0.5;
    }

.generic-content-container input[type=checkbox]:disabled {
    opacity: 0.7;
    }

.generic-content-container input[type=radio]:disabled {
    opacity: 1;
    }

.generic-content-container h5 {
    margin: 1.5em 0 1em;
    font-size: 1.1rem;
    line-height: 1.6;
    color: #666;
    }

.generic-content-container h5 + p {
    margin: 1.5em 10px;
    line-height: 1.4;
    }

.generic-content-container h6 {
    margin: 1.5em 0 0.5em;
    font-size: 1rem;
    color: #666;
    }

.generic-content-container h6.inline-header {
    display: inline;
    }

.generic-content-container p.instruction {
    line-height: 1.5;
    text-transform: none;
    }

.generic-content-container a,
.generic-content-container .post-controls-links form.single-button-form [type=submit],
.generic-content-container .ats.top-buttons button[type] {
    display: inline;
    margin: 0;
    border: none;
    padding: 0;
    color: #09F;
    background: none;
    text-decoration: underline;
    }

.generic-content-container .post-controls-links form.single-button-form {
    display: inline;
    }

.generic-content-container .post-controls-links form.single-button-form [type=submit]:not(:hover):not(:focus) {
    text-decoration: none;
    }

.generic-content-container video {
    max-width: 100%;
    margin: 12px 0;
    }

/* Mast-style post 'buttons' (actually links) */
/* Leaner markup than Mast: <a class="button">Linktext <span class="button-down-arrow">&#9660;</span></a> */

.generic-content-container a.post-button {
    display: inline-block;
    margin: 4px 8px 4px 0;
    background-color: #7f7f7f;
    border: solid 4px #ccc;
    border-radius: 12px;
    padding: 0 12px;
    text-decoration: none;
    line-height: 1.875;
    font-weight: bold;
    color: #fffeed;
    }

.generic-content-container a.post-button .post-button-down-arrow {
    display: inline-block;
    vertical-align: middle;
    width: 0;
    height: 0;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 8px solid #fffeed;
    text-indent: -5000px;
    }

/* -------- ALLOW PREVIEWS IN HTML -------- */

.generic-content-container li.preview {
    margin: 0 -12px;
    }

.generic-content-container li.preview > a {
    text-decoration: none;
    }

.generic-content-container .line_break + ul.single-preview .border_top {
    border-top: none;
    }

/* -------------------------------------------------------- */

.country-name,
.towncity-name,
.name,
.company-name,
.orchestra-name,
.email,
.currency-name,
.no-transform,
.generic-content-container .country-name,
.generic-content-container .towncity-name,
.generic-content-container .name,
.generic-content-container .company-name,
.generic-content-container .orchestra-name,
.generic-content-container .email,
.generic-content-container .currency-name,
.generic-content-container .no-transform,
.generic-content-container a.button,
.generic-content-container form * {
	text-transform: none;
	}

.generic-content-container #add_menu a.print,
.generic-content-container .pdf-link a {
    box-sizing: border-box;
    display: inline-block;
    margin: 10px;
    border: solid 1px #bbb;
    border-radius: 4px;
    padding: 0.5em;
    line-height: 1.2;
    font-size: 13.3333px;
    background: #ffc;
    color: #222;
    text-transform: none;
    text-decoration: none;
    }

.generic-content-container .pdf-link a {
    margin: 0 0 1em 0;
    }

#advert_rates * {
    margin: 0 0 0.2em;
    padding: 12px 0;
    }

#advert_rates,
.generic-content-container .add_area,
.generic-content-container .add_print_area,
.generic-content-container .invoice-print-area,
.generic-content-container .form-response {
    margin: 10px 0;
    border: solid 1px #bbb;
    border-radius: 5px;
    padding: 0 10px;
    background: #ffe;
    line-height: 1.4;
    }

.generic-content-container .add_area > *,
.generic-content-container .add_print_area > *,
.generic-content-container .invoice-print-area > * {
    margin: 1em 0;
    }

body.add-page .generic-content-container .add_area {
    margin-bottom: 1.5rem;
    border-color: #54542a;
    }

body.add-page .generic-content-container .add_area > legend {
    margin-bottom: 0;
    padding: 0 5px;
    font-size: 1.1rem;
    color: #54542a;
    }

.generic-content-container .invoice-print-area {
    text-transform: none;
    }

.generic-content-container p,
.generic-content-container > ul > li {
    margin: 1em 0;
    padding: 0;
    }

.generic-content-container ol.list {
    padding-left: 40px;
    }

.generic-content-container ul.list {
    list-style-type: disc;
    margin-bottom: 2em;
    padding-left: 40px;
    }

.generic-content-container ul.list li {
    margin: 1em 0;
    padding: 0;
    }

.generic-content-container .add_area > p:last-child,
.generic-content-container .add_area > div > p:last-child {
    padding-bottom: 0;
    }

.generic-content-container .add_area > div {
    position: relative;
    margin: 1em 0;
    padding-right: 24px;
    }

.generic-content-container .add_area_sticky {
    position: sticky;
    top: 2rem;
    z-index: 10000;
    margin: 10px 0;
    border: none;
    padding: 0;
    display: inline-block;
    box-shadow: 0 0 5px 5px #ffe;
    }

.generic-content-container .add_area > div.subtype-price-sticky.is-fixed {
    position: fixed;
    top: 2rem;
    z-index: 10000;
    background: #ffffed;
    border: solid 1px #BBB;
    border-radius: 5px;
    padding: 0 10px;
}

.generic-content-container .add_area > div.subtype-price-filler.is-hidden {
    display:none;
}

.generic-content-container .add_area_sticky > .submit {
    margin: 0;
    padding: 0;
    }

.add_area label + br {
    display: none; /* legacy HTML */
    }

.add_area .extended-label {
    font-weight: normal;
    }

.add_area input[type=text],
.add_area input[type=email],
.add_area input[type=url] {
    width: 70%;
    min-width: 12em;
    }

.add_area input[type=date],
.add_area input.date {
    width: 9em;
    min-width: 9em;
    text-align: center;
    }

.add_area input.short_text,
.add_area input[type=number],
.add_area input[type=tel] {
    width: 12em;
    }

.add_area input.long_text,
.add_area textarea {
    width: 100%;
    }

.add_area input[type=file] {
    border: none;
    border-radius: 0;
    padding: 0;
    }

.add_area select {
    width: 100%;
    }

.added-details p {
    line-height: 1.5;
    }

/* Validation */

.add_area img.warning-icon {
    position: absolute;
    margin: 0.8em 0 0 12px;
    margin-top: calc(0.8em + (1.4em - 12px) / 2);
    }

.add_area input[type=checkbox] + img.warning-icon {
    position: static;
    margin: 0 0.6em;
    vertical-align: middle;
    }

.add_area input[type=radio] + img.warning-icon {
    right: 0;
    }

.add_area input[type=hidden] + a + img.warning-icon {
    right: 0;
    }

.add_area fieldset.date-inputs img.warning-icon {
    margin-left: 36px; /* 12px as above + 24px for datepicker */
    }

.add_area input.date-invalid,
.add_area select.date-invalid {
    background: #E46E6E;
    }

.generic-content-container h6 + img.warning-icon {
    position:absolute;
    right: 20px;
}


/* Category checkboxes (legacy, deprecated - use 'subtype lists' CSS instead) */

.add-categories,
.add-sub-categories {
    margin: 1em 0;
    }

.add-sub-categories {
    margin-left: 1em;
    }

.add-categories .checkbox:not(.has-desc) {
    margin: 0.5em 0.6em;
    display: inline-block;
    }

.add-categories .checkbox.has-desc {
    margin: 0.3em 0 0.5em 0.6em;
    }

.add-categories .checkbox > *:not(p) {
    display: inline;
    vertical-align: middle;
    font-weight: normal;
    }

.add-categories .checkbox.has-desc > p {
    margin-top: 0.2em;
	color: #999;
    font-style: italic;
    }

.add-categories input:checked + label {
    color: #222;
    }

.add-categories input:hover:not([disabled]) + label,
.add-categories input:focus + label,
.add-categories input:not([disabled]) + label:hover {
    color: #000;
    }

/* Subtype lists (checkboxes) */

.subtype-list {
    margin: 1em 0;
    }

.subtype-list legend {
    margin: 0.6em 0 0.4em;
    padding: 0;
    }

.subtype-list ul {
    columns: 2;
    }

.subtype-list li.checkbox {
    padding: 0.2em 0; /* Using margin has problems with the column break */
    }

@media only screen and (max-width: 40em) {

    .subtype-list-at ul,
    .subtype-list-cm ul,
    .subtype-list-of ul {
        columns: 1;
        }
    }

@media only screen and (max-width: 25em) {

    .subtype-list ul {
        columns: 1;
        }
    }

/* Dropdowns */

option.menu_subhead,
select.subtypes option:not(.option-is-id):not(.option-is-empty) {
    background: #FFC;
    }

.month-year-input {
    position: relative;
    }

.month-year-input > legend {
    padding-left: 0;
    }

.month-year-input label {
    font-weight: normal;
    }

.month-year-input > div {
    display: inline-block;
    width: auto;
    max-width: 50%;
    }

.month-year-input [name$=_year] {
    width: 6em;
    margin-right: 1em;
    }

.month-year-input [name$=_month] {
    width: 12em;
    }

.month-year-input img.warning-icon {
    top: 0;
    right: 0;
    }

/* VAT */

label[for=invoice_vatnum_num] {
    display: inline;
    }

.VATIN-countrycode:before { content: ' '; display: block; }

/* Photos/Graphics */

.image-input {
	position: relative;
	padding-left: 135px;
	min-height: 135px;
	}

.ajax-image-input {
	padding-left: 0;
    }

.ajax-image-input input[type=file] {
    display: block;
    }

.image-input-thumb {
	position: absolute;
	top: 0;
	left: 0;
	}

.image-input-thumb img {
    display: block;
    max-height: 120px;
    min-height: 120px;
    }

.ajax-image-input .image-input-thumb {
    position: relative;
    display: inline-block;
    margin: 1em 0;
    }

img.blank-image + button.image-delete {
    display: none;
    }

button.image-delete {
	position: absolute;
	top: 0;
	right: 0;
	height: 20px;
	width: 20px;
    margin: 0 0 0 2px;
    padding: 0;
	background: white url(../images/icons/delete.png) no-repeat center center !important;
	text-indent: -5000px;
	}

button.image-delete:hover, button.image-delete:focus {
    border-color: #F88;
    }

.previews-wrap {
    display: inline-block;
    margin: 1em 0 0 0;
    }

.previews-wrap img.ajax-loader {
    position: absolute;
    right: 36px;
    bottom: 0;
    }

.previews-wrap p {
    font-weight: bold;
    padding: 0.4em 0;
    }

.previews-wrap a img {
    position: static;
    margin: 0 10px 10px 0;
    vertical-align: top;
    outline: none;
    opacity: 0.9;
    }

.previews-wrap a.selected img,
.previews-wrap a:hover img,
.previews-wrap a:active img,
.previews-wrap a:focus img {
    outline: solid 2px #54542a;
    opacity: 1;
    }
	
#photo-manager, #audio-manager {		
	font-size: 16px;	
    border-radius: 0.5em;
    margin: 0.5em 0 1em 0;
	padding: 0.5em;
    background: #e4e4e4;
}
	
#photo-manager img {
	width: 100%;
	height: 100%;
}
#photo-manager label {
	display: none;
}
#photo-manager input[type='checkbox'] {
	margin-right: 0.1em;
}
#photo-manager input[type='button'] {
	margin-right: 0.5em;
}
.photo-manager-main {
	display: block;	
}
.photo-manager-more {
	display: inline-block;	
}
.photo-manager-select {
	display: inline-block;
	vertical-align: middle;
	padding: 0 0.2em 0em 0.2em;	
	overflow: hidden;	
}

/* (New) generic single image inputs */

.generic-image-input {
    min-height: 13.5rem;
    }

.generic-image-input > fieldset,
.generic-image-input > div {
    display: inline-block;
    vertical-align: top;
    }
    
.generic-image-input label.button {
    margin-left: 1em;
    }    

.generic-image-input img.replacing-pending {
    opacity: 0.4;
    }

/* Ajax upload progress */

.ajax-upload-progress-bg {
	background-color: #CCC;
	height: 0.2em;
	width: 100%;
	margin: 0.3em 0 0.2em 0;
    }

.ajax-upload-progress {
	background-color: #09F;
	height: 100%;
	width: 0%;
    transition: width 1s, opacity 1s;
    }

.modal_message .ajax-upload-progress-bg {
    height: 0.6rem;
    margin: 1rem 0 0;
    }

/* Document library */

/* Also includes .file-input-wrap, job application form files and PDFs in courses/comps */

#course-pdf,
#competition-pdf,
.job-ats-file,
.repeating-inputs > .repeating-group,
.doc-library > [data-file-idx],
.ats-request-files .modal_row:not(:first-child) {
    margin: 2em 0 2em 2em;
    border-radius: 0.5em;
    padding: 0.5em 1.5em 0.5em;
    background: #e4e4e4;
    }

.doc-library > [data-file-idx] > div {
    margin: 1em 0;
    }

.repeating-inputs > .repeating-group.highlight {
    background: #FF6;
    }

.ats-request-files .modal_row:not(:first-child) {
    margin-left: 0;
    }

#course-pdf,
#competition-pdf {
    margin-right: 24px;
    }

#course-pdf,
#competition-pdf,
.job-ats-file {
    margin-left: 0;
    }

.doc-library > [data-file-idx] ~ *,
.repeating-inputs > .repeating-group ~ * {
    margin-left: 2em;
    }

.repeating-group,
.file-input-wrap {
    position: relative;
    }

.file-input-wrap input[type=file] {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    }

.file-input-wrap .format-label {
    display: none;
    }

#course-pdf,
#competition-pdf {
    min-height: 90px;
    }

.job-ats-file {
    min-height: 118px;
    }

.job-ats-file, .file-input-wrap {
    margin-bottom: 1em;
    }

.generic-file-input img.file-icon,
.job-ats-file img.file-icon,
.doc-library img.file-icon {
    height: 32px;
    margin-top: 0.3em;
    margin-right: 8px;
    vertical-align: middle;
    }

.doc-library label[for^=job_file_description_] {
    clear: left;
    font-weight: normal;
    }

.generic-file-input legend {
    padding-top: 0.3em;
    padding-left: 0;
    }

#course-pdf label,
#competition-pdf label {
    display: inline-block;
    }

#course-pdf .ajax-loader,
#competition-pdf .ajax-loader {
    left: 0.5em;
    top: 2.5em;
    }

.file-input-wrap button.file-clear,
.file-input-wrap button.file-clear:hover,
.file-input-wrap button.file-clear:focus,
.file-input-wrap button.file-delete,
.file-input-wrap button.file-delete:hover,
.file-input-wrap button.file-delete:focus,
.file-input-wrap button.file-remove,
.file-input-wrap button.file-remove:hover,
.file-input-wrap button.file-remove:focus,
.repeating-group button.repeating-group-clear,
.repeating-group button.repeating-group-clear:hover,
.repeating-group button.repeating-group-clear:focus,
.repeating-group button.repeating-group-remove,
.repeating-group button.repeating-group-remove:hover,
.repeating-group button.repeating-group-remove:focus {
    position: relative;
    z-index: 1000;
    float: right;
    box-sizing: content-box;
	height: 25px;
    width: 21px;
    margin: 0 0 0 1em;
    border: none;
    border-radius: 0;
    padding: 2px;
    text-align: left;
    text-indent: -5000px;
    background: transparent url(../images/icons/bin.png) scroll no-repeat center center;
    }

#audio-manager .audio-delete {
    float: right;
}

.generic-image-input button.file-delete,
.generic-image-input button.file-delete:hover,
.generic-image-input button.file-delete:focus {
    margin: 0;
    float: none;
    }

.repeating-group button.repeating-group-clear,
.repeating-group button.repeating-group-clear:hover,
.repeating-group button.repeating-group-clear:focus,
.repeating-group button.repeating-group-remove,
.repeating-group button.repeating-group-remove:hover,
.repeating-group button.repeating-group-remove:focus {
    position: absolute;
    top: 5px;
    right: 1.5em;
    }

.repeating-group button.repeating-group-remove,
.repeating-group button.repeating-group-remove:hover,
.repeating-group button.repeating-group-remove:focus,
.file-input-wrap button.file-remove,
.file-input-wrap button.file-remove:hover,
.file-input-wrap button.file-remove:focus {
    background-image: url(../images/icons/offline.png);
    }

.file-input-wrap button.file-clear:hover,
.file-input-wrap button.file-delete:hover,
.file-input-wrap button.file-remove:hover,
.repeating-group button.repeating-group-clear:hover {
    cursor: pointer;
    }

.file-input-wrap button.file-clear:focus,
.file-input-wrap button.file-delete:focus,
.file-input-wrap button.file-remove:focus,
.repeating-group button.repeating-group-clear:focus {
    outline: dotted 1px black;
    }

.repeating-group.empty button.repeating-group-clear,
.repeating-group:not(.empty) button.repeating-group-remove,
.file-input-wrap span.filename-empty ~ button.file-clear, /* button.file-clear deprecated in favour of file-delete */
.file-input-wrap span.filename-empty ~ button.file-delete,
.file-input-wrap span.filename:not(.filename-empty) ~ button.file-remove {
    display: none;
    }

.file-input-wrap span.filename-empty ~ .format-label {
    display: inline;
    }

.file-input-wrap img.warning-icon {
    top: 0;
    right: 0;
    }

#job-equal-ops-file {
    margin-top: 0.5em;
    }

.repeating-group > div > input[type=checkbox] {
    margin: 2rem 0;
    }

.repeating-group img.warning-icon {
    margin: 1em /* 0.3 margin + 0.5 padding + 0.2 ((line-height-1) / 2) */ 0 0 0.25em;
    }

.ats-request-files .char-count {
    float: left;
    }

.ats-request-files .modal_row > div:nth-child(n+2) {
    float: right;
    margin-left: 3em;
    white-space: nowrap;
    }

.ats-request-files .modal_row > div:nth-child(n+2) label {
    font-size: 0.9em;
    font-weight: normal;
    }

.ats-request-files .modal_row > div input[name^="ats_r1file_desc_"] {
    width: calc(100% - 24px);
    margin-right: 12px;
    }

@media only screen and (max-width: 40em) {

    .file-input-wrap span.filename-empty ~ .format-label {
        display: block;
        }

    }

/* Salary */

input[name^=job_salary][type=number] {
    -moz-appearance:textfield;
}

input[name^=job_salary][type=number]::-webkit-outer-spin-button,
input[name^=job_salary][type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
}

/* TinyMCE */

#job-text-input, #musician_cv_input {
    position: relative;
	margin: 1em 0 2em;
	}

#job-text-input span[role=application],
#musician_cv_input span[role=application]{
    display: block;
    width: 100px; /* <<<< hacky :( */
    }

.tinymce-hidden {
	height: 0;
    margin: 0 !important;
	visibility: hidden;
	overflow: hidden;
	}

.tox button.tox-tbtn:not(.tox-tbtn--disabled) {
    background: #FFC;
    border: solid 1px #111;
    }

/* Datepicker */

fieldset.date-inputs {
    position: relative;
    }

/* Datepicker controls */

#dbe_form .date-picker-control,
fieldset.date-inputs input,
fieldset.date-inputs a,
fieldset.date-inputs button {
    box-sizing: content-box! important;
    height: 1.4em;
    margin-right: 1em !important;
    vertical-align: middle !important;
    line-height: 1.3 !important;
    }

.date-picker-control:after {
    content: "Select date";
    color: #222 !important;
    display: inline-block;
    padding-top: 3px;
    }

html[lang="fr"] .date-picker-control:after {
    content: "Sélectionnez date";
    }

html[lang="de"] .date-picker-control:after {
    content: "Datum wählen";
    }

html[lang="es"] .date-picker-control:after {
    content: "Seleccione fecha";
    }

html[lang="it"] .date-picker-control:after {
    content: "Seleziona data";
    }

html[lang="jp"] .date-picker-control:after {
    content: "日付を選ぶ";
    }

.date-picker-control span {
    display: none !important;
}

fieldset.date-inputs .date-buttons {
    display: inline;
}

fieldset.date-inputs img.warning-icon {
    right: 0;
    }

/* Datepicker */

body > .date-picker {
    font-size: 1rem;
    }

/* Month/year inputs */

fieldset.month-year-inputs {
    margin: 1.5em 0;
    }

fieldset.month-year-inputs legend {
    padding: 0;
    }

fieldset.month-year-inputs > div > * {
    display: inline-block;
    width: auto;
    }

fieldset.month-year-inputs > div > select:not(:last-child) {
    margin-right: 1em;
    }

/* Courses */

#invoice_price img.ajax-loader {
    display: none;
    }

/* Jobs */

.generic-content-container form:not(.ats-on) .ats-if-on,
.generic-content-container form.ats-on .ats-if-off,
.generic-content-container form:not(.cat-pe) .cat-pe-only,
.generic-content-container form:not(.cat-te) .cat-te-only,
.generic-content-container form:not(.cat-of) .cat-of-only,
.generic-content-container form:not(.ats-anon) .ats-anon-1,
.generic-content-container form.ats-anon .ats-anon-0,
.generic-content-container form .elig-y,
.generic-content-container form .elig-0,
.generic-content-container form:not(.ats-media-requirements) .media-requirements,
.generic-content-container form:not(.ats-other-requirements) .other-requirements,
.generic-content-container form:not(.ats-yesno-requirements) .yesno-requirements,
.generic-content-container form:not(.ats-text-requirements) .text-requirements,
.generic-content-container form:not(.ats-optionsingle-requirements) .optionsingle-requirements,
.generic-content-container form:not(.ats-optionmultiple-requirements) .optionmultiple-requirements {
    display: none !important; /* overrides the below i.e. category condition and ATS condition are ANDed */
    }

.generic-content-container form:not(.ats-on) .ats-if-off,
.generic-content-container form.ats-on .ats-if-on,
.generic-content-container form.cat-pe .cat-pe-only,
.generic-content-container form.cat-te .cat-te-only,
.generic-content-container form.cat-of .cat-of-only,
.generic-content-container form:not(.ats-anon) .ats-anon-0,
.generic-content-container form.ats-anon .ats-anon-1 {
    display: block;
    }

.generic-content-container form:not(.ats-anon) span.ats-anon-0,
.generic-content-container form.ats-anon span.ats-anon-1 {
    display: inline;
    }

fieldset#jciie div {
    margin: 1em 0 0 0;
    padding: 0;
    }

fieldset#jciie .JS + div {
    border-left: none;
    padding-left: 0;
    }

[id^=jciie_] {
    display: none;
    }

#jciie_radios, #jciie_radios label {
    display: block;
    font-weight: normal;
    }

#jciie_radios label * {
    display: inline;
    vertical-align: middle;
    }

#jciie_radios label input {
    margin-right: 0.5em;
    }

[data-method=current] #jciie_current,
[data-method=upload]  #jciie_upload,
[data-method=fb]      #jciie_fb {
    display: block;
    }

[data-method=fb] .image-input-thumb,
[data-method="0"] .image-input-thumb {
    display: none;
    }

#jciie_fb img {
    display: block;
    margin-top: 10px;
    }

fieldset#job-category-radio label,
fieldset#job-teaching-radio label {
    display: inline-block;
    margin: 0.3em 0.9em 0 0;
    font-weight: normal;
    }

fieldset#job-category-radio label *,
fieldset#job-teaching-radio label * {
    display: inline;
	vertical-align: middle;
    margin-right: 0.4em;
    }

#job_pdf {
	height: 21px;	
	}

#job_logo {
	font-size: 14px;
	margin-top: 10px;
	height: 26px;	
	}

.generic-content-container label.radio-label[for^="job_ats_"] {
    font-weight: normal;
    }

.generic-content-container label.radio-label[for^="job_ats_"]:first-of-type {
    margin-left: 2em;
    }

.generic-content-container label[for^="job_ats_app_type_"] {
    display: block;
    margin-left: 2em;
    vertical-align: baseline;
    }

.generic-content-container label[for^="job_ats_app_type_"]:last-of-type {
    margin-bottom: 2em;
    }

.generic-content-container label[for^="job_ats_selfid_"] {
    font-weight: normal;
}

.job_ats_selfid_visible {
    display: block;
}

.job_ats_selfid_hidden {
    display: none;
}

#ats-selfid-questions input[type="radio"] {
    margin-right: 1em;
}

#ats-selfid-questions label {
    font-weight: normal;
}

#ats-selfid-questions .selfid_preamble {
    margin-bottom: 1em;
}

#job-subtypes-dynamic {
	position: relative;
	}

#job-subtypes-dynamic .ajax-loader {
	position: absolute;
	right: 10px;
	bottom: 10px;
	}
	
/* Requirements - options */

.ats-req-option-options {
    margin: 1em 0;
    border: solid 1px #afafaf;
    border-radius: 0.5em;
    padding: 1em 1em 1em 2em;
    background: #EEE;
    }

.ats-req-option-option {
    position: relative;
    }

.ats-req-option-option button.option-remove {
    position: absolute;
    top: 0;
    right: 0;
    background: url(../images/icons/offline.png);
    height: 12px;
    width: 12px;
    margin: 0.3em 0 0 0;
    border: none;
    border-radius: 0;
    padding: 0;
    text-align: left;
    text-indent: -5000px;
    }

/* Musicians */

#musician-options .checkbox > * {
    display: inline;
    margin: 1em 0;
    vertical-align: middle;
    }

li.preview .box_text_admin #musician-options {
    margin: 1em 0;
    }

form.mu-off {
    display: inline-block;
    }

/* Messages */

.generic-content-container .privacy-note {
    display: block;
    }

.generic-content-container .error,
.generic-content-container .warning,
.generic-content-container .file-warning {
    color: #C00;
    margin-top: 1em !important;
    margin-bottom: 1em !important;
	text-transform: none;
    }

.generic-content-container .file-warning {
    text-transform: lowercase;
    }

.generic-content-container .email-exists-warning {
    color: inherit;
    }

.generic-content-container > .error,
.generic-content-container > .error + p,
.generic-content-container > .warning {
    margin: 1.5em 10px !important;
    font-size: 1.1rem;
    line-height: 1.6;
    }

.generic-content-container > .file-warning a {
    font-size: 1.1rem;
    line-height: 1.6;
    color: inherit;
    }

.generic-content-container .competition-charge-warning,
.generic-content-container .course-charge-warning {
    font-size: 1rem;
    line-height: 1.3;
    color: #060;
    }

.generic-content-container > .resend-confirmation-email {
    margin: 10px;
    }

#no-payment-confirm > p {
    margin: 1.5em 0 0.8em 0 !important;
    }

.generic-content-container p.confirmation {
	font-size: 1.1em;
	font-weight: bold;
	text-transform: none;
    color: #1C6624;
	}

/*
 * Payment
 * -------
 */

.generic-content-container .card-logos,
.generic-content-container .wp-logo,
.generic-content-container .pp-logo {
    display: inline-block;
    padding: 6px 0 0 12px;
}

p[data-for-payment-method] {
    display: none;
    }

/*
 * Update
 * ------
 */

.update-view-link {
    float: right;
    width: 10em;
    margin-top: 1em;
    }

form#on-off-form,
.generic-content-container .posting-info {
    margin-left: 10px;
    }

.generic-content-container .posting-info {
    line-height: 1.3;
    }

form#on-off-form fieldset {
    display: block;
    }

form#on-off-form p[class^=now-] {
    font-weight: bold;
    }

.posting-info-subtypes * {
	display: inline;
	}

.posting-info-subtypes a {
    text-decoration: none;
    }

.posting-info-subtypes ul + p {
    display: block;
    }

/* Supplemental nav */

.nav-supplemental {
    text-align: right;
    }

.nav-supplemental li {
    display: inline-block;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    }

.nav-supplemental li.pub-link {
    display: none;
    }

.nav-supplemental li a {
    font-weight: normal;
    }

/* Email templates */

.use-roster-mch-template,
.header-mch-template,
.footer-mch-template {
    display: none;
    }

.invite-reject-tabs > ul {
    margin-bottom: -1px;
    }

.invite-reject-tabs > ul li {
    display: inline-block;
    }

.invite-reject-tabs ul label {
    margin-bottom: 0;
    border: solid 1px #111;
    border-bottom: none;
    border-top-left-radius: 0.5em;
    border-top-right-radius: 0.5em;
    padding: 0.5em;
    }

.invite-reject-tabs ul label {
    color: #bbb;
    }

input#tab_invite:checked ~ ul label[for=tab_invite],
input#tab_reject:checked ~ ul label[for=tab_reject] {
    color: #111;
    background: #fff;
    }

.invite-reject-tabs input[type=radio] {
    display: none;
}

.invite-reject-tabs > div[id$=_template-wrap] {
    display: none;
    padding: 1em;
    border: solid 1px #111;
    border-top-right-radius: 0.5em;
    border-bottom-left-radius: 0.5em;
    border-bottom-right-radius: 0.5em;
    }

input#tab_invite:checked ~ #invite_template-wrap,
input#tab_reject:checked ~ #reject_template-wrap {
    display: block;
}

.invite-reject-tabs label[for=invite_template] {
    color: #090;
    }

.invite-reject-tabs label[for=reject_template] {
    color: #D33;
    }

.template-preview.has-preview {
    padding: 1em;
    background: #ddd;
    }

/*
 * Login
 * -----
 */

label.show-password,
p.forgot-password-link {
    display: inline-block;
    margin-right: 2em;
    }

.user-new-existing-button {
    margin-top: 4em;
    border-top: solid 1px #bbb;
    padding-top: 1em;
    }

.user-new-existing-button > * {
    display: inline-block;
    vertical-align: middle;
    white-space: nowrap;
    }

.user-new-existing-button > p {
    margin-right: 2em !important;
    }

/*
 * Enquiries
 * ---------
 */

#enquiry_form br {
    display: none;
    }

#enquiry_form form > div {
	margin: 1em 0;
	clear: left;
    position: relative;
	}

#enquiry_form input, #enquiry_form textarea, #enquiry_form select {
    width: 302px;
    margin: 0.2em 15px 0 0;
    padding: 0.3em;
	}
	
#enquiry_form .submit .button {
	padding: 0.15em 1em;
	width: auto;
	}

#enquiry_form p { /* notes */
	clear: left;
	margin: 1em 0;
	}

.unavailable {
    font-size: 1.2em;
    font-weight: bold;
    }

.notice {
	text-transform: none;
	}

p.sent-message {
	clear: left;
	padding: 1em 0;
    font-size: 1.2em;
    font-weight: bold;
	}

@media only screen and (max-width: 380px) {

    #enquiry_form input, #enquiry_form textarea, #enquiry_form select {
        width: 260px;
        }

	}

/*
  Admin links and similar
  -----------------------
 */

.filter-links {
    margin: 12px 0;
    }

.generic-content-container .post-controls-links form * {
    text-transform: lowercase;
    }

.post-controls-links ul.nav {
    display: inline-block;
    }
    
.admin-links > div, .manager-links > div {
    margin: 0.6em 0;
    }

.admin-links.highlight-controls, 
.manager-links.highlight-controls {
    border-left: solid 3px #a3a375;
    padding-left: 1em;
    }

.ats-links {
    padding: 0.3em;
    border-radius: 3px;
    line-height: 1.4;
    background: #ddd;
    }

/*
 * Suggest a directory entry
 * -------------------------
 */

#suggest-options-block label {
   display: block; 
   font-weight: normal;
}
#suggest-options-block legend {
    font-size: 1em;
    padding-left: 0;
}
#suggest-state-block {
    display: none;
}

/* 
 * Admin
 * -----
 */

form.no-invoice input[type=submit] {
    background: #FFC536;
    }

/*
 * Help
 * ----
 */

.generic-content-container [data-help] {
    visibility: hidden;
    text-decoration: none;
    }

.generic-content-container [data-help].active {
    visibility: visible;
    }

svg.mch-help {
    vertical-align: middle;
    width: 16px;
    height: 16px;
    fill: #777;
    }

.ats-links svg.mch-help {
    fill: #09f;
    }
	
.generic-content-container a[data-help].help-loading {
    cursor: wait;
    }

.generic-content-container a[data-help]:hover svg.mch-help,
.generic-content-container a[data-help]:focus svg.mch-help {
    fill: #444;
    }

.ajax-loader {
	position: absolute;
    }

select ~ .ajax-loader {
	left: 50%;
    margin-left: -16px;
    }

.modal-ajax-loader .ajax-loader {
	position: static;
    }

[id$="s3-upload"] .modal_box {
    width: auto;
    }

[id$="s3-upload"] .modal_heading {
    color: #7f7f7f;
    }

[id$="s3-upload"] .modal_content {
    border: none;
    box-shadow: none;
    text-align: center;
    }

/*
 * Publish forms
 * ----
 */	
#publish_form {
	text-transform: none;
}

/*
 * DEPRECATE and remove .std* classes.
 * ---------
 */

.std_container {
	width: 100%;
	font-size: 0;
	padding-bottom: 16px;
}
.std_inline {
	display: inline-block;
	vertical-align: top;
    padding-right: 8px;
}
.std_padding {
 	padding: 16px 24px 0 0;   
}
.std_padding_head {
 	padding: 8px 24px 8px 0;    
}
.std_padding_body {
 	padding: 0 24px 0 0;    
}
.std_row {
	padding: 0 0 12px 0;
}
.std_break {
	overflow: hidden;
	height: 6px;
}
.std_form_button {
	padding: 8px 16px;font-size: 14px;
}
.std_form_button_inline {
	padding: 4px 8px;font-size: 14px;
}
.std_label, .std_form label {
	font-weight: bold;
}
.std_input {
  width: 100%;
  padding: 12px;
  font-size: 16px;
  font-weight: normal;
  box-sizing: border-box;
  border: 1px solid #CCC;
  border-radius: 3px;
  resize: vertical;
  font-family: inherit; /* textarea */
  margin-top: 4px;
}
.std_form fieldset {
    border: 0;
    padding: 0;
}	
	
/*
 * Print
 * ----- * -----
 */

@media print {

    /* Print invoice */

    body.add-confirm-page .box_head,
    body.add-confirm-page #publish_form > * {
        display: none;
        }

    body.add-confirm-page div {
        border: none !important;
        }
        
    body.add-confirm-page #publish_form > .invoice-print-area {
        display: block;
        padding: 0;
        font-size: 10pt;
        }

    }

#cancel_modal .modal_box {
    max-width: 300px;
}
