/* always start with a comment, in case */
dummy {
}

/*
		h1 {
		    border-bottom: 1px solid #ddd;
		    padding-bottom: 10px;
		    margin-bottom: 20px;
		}
		.process-page h1 {
		    border-bottom: 1px solid #ddd;
		    padding-bottom: 40px;
		    margin-bottom: 50px;
		}
		
		.subheading1 {
			margin-top: -75px;
			margin-bottom: 20px;
		}
		
		#grid {
	    font-size: 12px;
		}

		ul.k-upload-files {
			list-style: none;
			margin-left: 0;
			margin-bottom: 0.5em;
			margin-top: 0.5em;
		}
    .k-grid .doc-icons { display: block; }
    .k-grid .doc-icons { text-align: center; }
    .k-grid .doc-icons a { display: inline-block; }
    .k-grid th.k-header { font-weight: bold; }

    .k-notification-upload-success.k-group {
        background: rgba(0%,60%,0%,.7);
        color: #fff;
    }
    .upload-success {
        width: 360px;
        height: 100px;
        padding: 0 30px;
        line-height: 100px;
    }
    .upload-success h3 {
        font-size: 1.7em;
        font-weight: normal;
        display: inline-block;
        vertical-align: middle;
    }
    .upload-success img {
        display: inline-block;
        vertical-align: middle;
        margin-right: 10px;
		}
		

    .dropdown-header {
        border-width: 0 0 1px 0;
        text-transform: uppercase;
    }

    .dropdown-header > span {
        display: inline-block;
        padding: 2px;
    }

    .dropdown-header > span:first-child {
        width: 50px;
    }

    #employee-search-field-list .k-item {
        line-height: 1em;
        min-width: 300px;
    }
    
*/

/* Material Theme padding adjustment*/
/*    
    .k-material #employee-search-field-list .k-item,
    .k-material #employee-search-field-list .k-item.k-state-hover,
    .k-materialblack #employee-search-field-list .k-item,
    .k-materialblack #employee-search-field-list .k-item.k-state-hover {
        padding-left: 5px;
        border-left: 0;
    }

    #employee-search-field-list .k-item > span {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: inline-block;
        vertical-align: top;
        margin: 7px 10px 4px 5px;
    }

    #employee-search-field-list .k-item > span:first-child {
        -moz-box-shadow: inset 0 0 30px rgba(0,0,0,.3);
        -webkit-box-shadow: inset 0 0 30px rgba(0,0,0,.3);
        box-shadow: inset 0 0 30px rgba(0,0,0,.3);
        margin: 10px;
        width: 50px;
        height: 50px;
        border-radius: 50%;
        background-size: 100%;
        background-repeat: no-repeat;
    }

    #employee-search-field-list h3 {
        font-size: 1em;
        font-weight: bold;
        margin: 0 0 1px 0;
        padding: 0;
    }

    #employee-search-field-list p {
        margin: 0;
        padding: 0;
        font-size: .8em;
    }

    .k-list-container {
    	width: 440px !important;
    }
*/
.profile-picture-small {
    display: inline-block;
    width: 28px;
    margin-top: 6px;
    height: 28px;
    border-radius: 50%;
    background-size: 100%;
    background-position: center center;
    vertical-align: middle;
    line-height: 30px;
    box-shadow: inset 0 0 1px #999, inset 0 0 10px rgba(0, 0, 0, .2);
    margin-left: -5px;
}

/*
    .medarbeider-navn {
        display: inline-block;
        vertical-align: middle;
        line-height: 32px;
        padding-left: 8px;
    }
    
		code {
		  font-size: 80%;
		}

		.doc-icon {
		  margin-right: 10px;
		}
		#employee-search-field {
			width: 225px;
		}
		
		.hovedknapp {
			display: inline-block; 
			float: right; 
			position: relative; 
			top: 1em; 
			margin-bottom: 3em;
		}
*/
.iconbadge {
    position: relative;
}

.iconbadge[data-badge]:after {
    content: attr(data-badge);
    position: absolute;
    bottom: -2px;
    right: -2px;
    font: bold 8px arial;
    background: #ddd;
    color: white;
    width: 10px;
    height: 10px;
    text-align: center;
    line-height: 10px;
    border-radius: 50%;
    box-shadow: 0 0 1px #333;
    opacity: 0.3;
}

.new-iconbadge[data-badge]:after {
    background: #124B8C;
}

.away-iconbadge[data-badge]:after {
    background: #ffd900;
}

.nojob-iconbadge[data-badge]:after {
    /*background:#900;*/
    background: #124B8C;
}

.out-iconbadge[data-badge]:after {
    /*background:#900;*/
    background: #124B8C;
}

.normal-iconbadge[data-badge]:after {
    background: #005A0d;
}

/*
 *  Usage:
 *
 *    <div class="sk-spinner sk-spinner-three-bounce">
 *      <div class="sk-bounce1"></div>
 *      <div class="sk-bounce2"></div>
 *      <div class="sk-bounce3"></div>
 *    </div>
 *
 */
.sk-spinner-three-bounce.sk-spinner {
    margin: 2px auto;
    width: 58px;
    float: left;
}

.sk-spinner-three-bounce div {
    width: 14px;
    height: 14px;
    background-color: #999999;
    border-radius: 100%;
    display: inline-block;
    -webkit-animation: sk-threeBounceDelay 1.4s infinite ease-in-out;
    animation: sk-threeBounceDelay 1.4s infinite ease-in-out;
    /* Prevent first frame from flickering when animation starts */
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

.sk-spinner-three-bounce .sk-bounce1 {
    -webkit-animation-delay: -0.32s;
    animation-delay: -0.32s;
}

.sk-spinner-three-bounce .sk-bounce2 {
    -webkit-animation-delay: -0.16s;
    animation-delay: -0.16s;
}

@-webkit-keyframes sk-threeBounceDelay {
    0%,
    80%,
    100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    40% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes sk-threeBounceDelay {
    0%,
    80%,
    100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    40% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

/* MEDARBEIDER STYLES */


/*
		#grid {
	    font-size: 12px;
		}

		ul.k-upload-files {
			list-style: none;
			margin-left: 0;
			margin-bottom: 0.5em;
			margin-top: 0.5em;
		}
*/
/* Grid */
/*
    .k-grid .doc-icons { display: block; }
    .k-grid .doc-icons { text-align: center; }
    .k-grid .doc-icons a { display: inline-block; }
    .k-grid th.k-header { font-weight: bold; }
*/
/* Success template */
/*
    .k-notification-upload-success.k-group {
        background: rgba(0%,60%,0%,.7);
        color: #fff;
    }
    .upload-success {
        width: 360px;
        height: 100px;
        padding: 0 30px;
        line-height: 100px;
    }
    .upload-success h3 {
        font-size: 1.7em;
        font-weight: normal;
        display: inline-block;
        vertical-align: middle;
    }
    .upload-success img {
        display: inline-block;
        vertical-align: middle;
        margin-right: 10px;
		}
		
		.k-multiselect-wrap {
			min-height: 2.3em;
		}
		
		.k-multiselect-wrap .k-icon, :root *>.k-sprite, :root *>.k-button-group .k-tool-icon {
	    vertical-align: top;
	    top: 4px;
	    position: relative;
		}
*/
.mobile-only {
    display: none;
}

.mainnav-toggle-label {
    display: none;
}

.mainnav-toggle .variant-close {
    display: none;
}

.input-group .k-dropdown-wrap {
    border-radius: 0 4px 4px 0;
}

.has-error .input-group .k-dropdown-wrap {
    border-color: #a94442;
}

.dropdown-header {
    border-width: 0 0 1px 0;
    text-transform: uppercase;
}

.dropdown-header-orgno {
    padding: 3px;
}

.dropdown-header > span {
    display: inline-block;
    padding: 2px;
}

.dropdown-header > span:first-child {
    width: 50px;
}

#employee-search-field-list .k-item {
    line-height: 1em;
    min-width: 300px;
}

/* Material Theme padding adjustment*/

.k-material #employee-search-field-list .k-item,
.k-material #employee-search-field-list .k-item.k-state-hover,
.k-materialblack #employee-search-field-list .k-item,
.k-materialblack #employee-search-field-list .k-item.k-state-hover {
    padding-left: 5px;
    border-left: 0;
}

/* (avatar span rules removed - search results are text-only, see the
   grouped-dropdown section at the end of this file) */

#employee-search-field-list h3 {
    font-size: 1em;
    font-weight: bold;
    margin: 0 0 1px 0;
    padding: 0;
}

#employee-search-field-list p {
    margin: 0;
    padding: 0;
    font-size: .8em;
}

#employee-search-field-list .k-item {
    line-height: 1em;
    min-width: 300px;
}


/* For select2 search box */

#globalsearchbox .select2-results .select2-results__option {
    line-height: 1em;
    min-width: 300px;
}

#globalsearchbox .k-material .select2-results .select2-results__option,
#globalsearchbox .k-material .select2-results .select2-results__option.k-state-hover,
#globalsearchbox .k-materialblack .select2-results .select2-results__option,
#globalsearchbox .k-materialblack .select2-results .select2-results__option.k-state-hover {
    padding-left: 5px;
    border-left: 0;
}

#globalsearchbox .select2-results .select2-results__option > span {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    vertical-align: top;
    margin: 7px 10px 4px 5px;
}

#globalsearchbox .select2-results .select2-results__option > span:first-child {
    -moz-box-shadow: inset 0 0 30px rgba(0, 0, 0, .3);
    -webkit-box-shadow: inset 0 0 30px rgba(0, 0, 0, .3);
    box-shadow: inset 0 0 30px rgba(0, 0, 0, .3);
    margin: 10px;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-size: 100%;
    background-repeat: no-repeat;
}

#globalsearchbox .select2-results h3 {
    font-size: 1em;
    font-weight: bold;
    margin: 0 0 1px 0;
    padding: 0;
}

#globalsearchbox .select2-results p {
    margin: 0;
    padding: 0;
    font-size: .8em;
}

#globalsearchbox .select2-results .select2-results__option {
    line-height: 1em;
    min-width: 300px;
}

#globalsearchbox .select2-container--default .select2-results__option--highlighted {
    background-color: #c0c6d1 !important;
    color: black !important;
}

/* Select2 search box over */

#orgnr .k-item {
    line-height: 1em;
    min-width: 300px;
}

/* Material Theme padding adjustment*/

.k-material #orgnr .k-item,
.k-material #orgnr .k-item.k-state-hover,
.k-materialblack #orgnr .k-item,
.k-materialblack #orgnr .k-item.k-state-hover {
    padding-left: 5px;
    border-left: 0;
}

#orgnr .k-item > span {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    vertical-align: top;
    margin: 7px 10px 4px 5px;
}

#orgnr .k-item > span:first-child {
    -moz-box-shadow: inset 0 0 30px rgba(0, 0, 0, .3);
    -webkit-box-shadow: inset 0 0 30px rgba(0, 0, 0, .3);
    box-shadow: inset 0 0 30px rgba(0, 0, 0, .3);
    margin: 10px;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-size: 100%;
    background-repeat: no-repeat;
}

#orgnr h3 {
    font-size: 1em;
    font-weight: bold;
    margin: 0 0 1px 0;
    padding: 0;
}

#orgnr p {
    margin: 0;
    padding: 0;
    font-size: .8em;
}

#orgnr .k-item {
    line-height: 1em;
    min-width: 600px;
}

#manager .k-item {
    line-height: 1em;
    min-width: 300px;
}

/* Material Theme padding adjustment*/

.k-material #manager .k-item,
.k-material #manager .k-item.k-state-hover,
.k-materialblack #manager .k-item,
.k-materialblack #manager .k-item.k-state-hover {
    padding-left: 5px;
    border-left: 0;
}

#manager .k-item > span {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    vertical-align: top;
    margin: 7px 10px 4px 5px;
}

#manager .k-item > span:first-child {
    -moz-box-shadow: inset 0 0 30px rgba(0, 0, 0, .3);
    -webkit-box-shadow: inset 0 0 30px rgba(0, 0, 0, .3);
    box-shadow: inset 0 0 30px rgba(0, 0, 0, .3);
    margin: 10px;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-size: 100%;
    background-repeat: no-repeat;
}

#manager h3 {
    font-size: 1em;
    font-weight: bold;
    margin: 0 0 1px 0;
    padding: 0;
}

#manager p {
    margin: 0;
    padding: 0;
    font-size: .8em;
}

#manager .k-item {
    line-height: 1em;
    min-width: 600px;
}

.k-list-container {
    width: 400px !important;
}

#orgno-list {
    width: 600px !important;
}

.medarbeider-bilde {
    display: inline-block;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background-size: 100%;
    background-position: center center;
    vertical-align: middle;
    line-height: 32px;
    box-shadow: inset 0 0 1px #999, inset 0 0 10px rgba(0, 0, 0, .2);
    margin-left: 5px;
}

.medarbeider-stort-bilde {
    display: inline-block;
    width: 150px;
    height: 180px;
    border-radius: 25%;
    background-size: 100%;
    background-position: center center;
    vertical-align: middle;
    line-height: 100px;
    box-shadow: inset 0 0 1px #999, inset 0 0 10px rgba(0, 0, 0, .2);
    margin-left: 5px;
}

/*
    .medarbeider-navn {
        display: inline-block;
        vertical-align: middle;
        line-height: 32px;
        padding-left: 8px;
    }
*/

.signatur p, .signatur .div, .signatur span, .signatur td {
    font-family: Tahoma, Geneva, sans-serif;
    font-size: 10pt;
}

/*
		.k-multiselect .k-button {
		    color: #000;
		    border-color: #ccc;
		    background-color: rgba(131, 167, 82, 0.25);
		    margin-right: 2px;
		}

		.k-multiselect .k-state-hover {
		    background-color: rgba(131, 167, 82, 0.50) !important;
		}

		.k-multiselect-wrap li {
		    margin: 1px 0 1px 1px;
		    padding: .0em 1.6em 0em 0.5em;
		    line-height: 1.79em;
		    float: left;
		    position: relative;
		    top: 2px;
		    left: 2px;
		}

		html {
		  position: relative;
		  min-height: 100%;
		}
		.footer {
		.footer {
		  position: absolute;
		  bottom: 0;
		  width: 100%;
		  height: 70px;
		  background-color: #f5f5f5;
		}

*/
/*		.container {
		  padding: 0 15px 0 0;
		}
		.container .text-muted {
		  margin: 20px 0;
		}

		body > .container {
		  padding: 70px 15px 10px 0;
		}
		
		.footer > .container {
		  padding-right: 15px;
		  padding-left: 15px;
		}
		
		code {
		  font-size: 80%;
		}

		.doc-icon {
		  margin-right: 10px;
		}
		#employee-search-field {
			width: 225px;
		}
		
		table.contact td {
			padding-right: 5px;
			min-width: 150px;
			vertical-align: top;
		}
.navbar-default {
    background-color: #f3f3f3;
    border-color: #ddd;
}

		#grid {
	    font-size: 12px;
		}

		ul.k-upload-files {
			list-style: none;
			margin-left: 0;
			margin-bottom: 0.5em;
			margin-top: 0.5em;
		}
*/

/* Grid */
/*
    .k-grid .doc-icons { display: block; }
    .k-grid .doc-icons { text-align: center; }
    .k-grid .doc-icons a { display: inline-block; }
    .k-grid th.k-header { font-weight: bold; }

    .k-notification-upload-success.k-group {
        background: rgba(0%,60%,0%,.7);
        color: #fff;
    }
    .upload-success {
        width: 360px;
        height: 100px;
        padding: 0 30px;
        line-height: 100px;
    }
    .upload-success h3 {
        font-size: 1.7em;
        font-weight: normal;
        display: inline-block;
        vertical-align: middle;
    }
    .upload-success img {
        display: inline-block;
        vertical-align: middle;
        margin-right: 10px;
		}
		
    .dropdown-header {
        border-width: 0 0 1px 0;
        text-transform: uppercase;
    }

    .dropdown-header > span {
        display: inline-block;
        padding: 2px;
    }

    .dropdown-header > span:first-child {
        width: 50px;
    }

    #employee-search-field-list .k-item {
        line-height: 1em;
        min-width: 300px;
    }
*/
/* Material Theme padding adjustment*/

.k-material #employee-search-field-list .k-item,
.k-material #employee-search-field-list .k-item.k-state-hover,
.k-materialblack #employee-search-field-list .k-item,
.k-materialblack #employee-search-field-list .k-item.k-state-hover {
    padding-left: 5px;
    border-left: 0;
}

/* (avatar span rules removed - search results are text-only, see the
   grouped-dropdown section at the end of this file) */

#employee-search-field-list h3 {
    font-size: 1em;
    font-weight: bold;
    margin: 0 0 1px 0;
    padding: 0;
}

#employee-search-field-list p {
    margin: 0;
    padding: 0;
    font-size: .8em;
}

.k-list-container {
    width: 400px !important;
}

.medarbeider-bilde {
    display: inline-block;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background-size: 100%;
    background-position: center center;
    vertical-align: middle;
    line-height: 32px;
    box-shadow: inset 0 0 1px #999, inset 0 0 10px rgba(0, 0, 0, .2);
    margin-left: 5px;
}

.medarbeider-stort-bilde {
    display: inline-block;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background-size: 100%;
    background-position: center center;
    vertical-align: middle;
    line-height: 100px;
    box-shadow: inset 0 0 1px #999, inset 0 0 10px rgba(0, 0, 0, .2);
    margin-left: 5px;
}

.medarbeider-medium-bilde {
    display: inline-block;
    width: 66px;
    height: 66px;
    border-radius: 50%;
    background-size: 100%;
    background-position: center center;
    vertical-align: middle;
    line-height: 50px;
    box-shadow: inset 0 0 1px #999, inset 0 0 10px rgba(0, 0, 0, .2);
    margin-left: 0px;
    float: left;
    margin-right: 10px;
}

.circle-border {
    border: 6px solid #eeeeee;
    border-radius: 50%;
}

.circle-medium-border {
    border: 3px solid #eeeeee;
    border-radius: 50%;
}

.medarbeider-navn {
    display: inline-block;
    vertical-align: middle;
    line-height: 32px;
    padding-left: 8px;
}

.signatur p, .signatur .div, .signatur span, .signatur td {
    font-family: Tahoma, Geneva, sans-serif;
    font-size: 10pt;
}

.checkbox.intable {
    margin: 2px 0;
}

body.dragging, body.dragging * {
    cursor: move !important;
}

.dragged {
    position: absolute;
    opacity: 0.5;
    z-index: 2000;
}

ol.sortable li.placeholder {
    position: relative;
    /** More li styles **/
}

ol.sortable li.placeholder:before {
    position: absolute;
    /** Define arrowhead **/
}

ol.nested_with_switch li, ol.simple_with_animation li, ol.serialization li, ol.default li {
    cursor: pointer;
}

ol.vertical.sortable li {
    display: block;
    margin: 5px;
    padding: 5px;
    border: 1px solid #cccccc;
    color: #0088cc;
    background: #eeeeee;
}

ol.sortable li {
    line-height: 18px;
}

ol.sortable li {
    display: list-item;
    text-align: -webkit-match-parent;
}

ol.sortable {
    list-style-type: none;
    padding-left: 0;
    margin-left: 0;
}

/* PROCESS-PAGE */

.process-page h2, .process-page h3, .process-page h4 {
    border-radius: 3px;
    font-weight: bold;
    background-color: #eee;
    padding: 5px 5px !important;
    margin-left: -5px;
    margin-right: -5px;
    margin-top: 0.7em;
}

.process-page h2 {
    color: #000;
    font-size: 20px;
}

.process-page div.anchor:before {
    display: block;
    content: " ";
    margin-top: -50px;
    height: 50px;
    visibility: hidden;
}


.process-page .responsible {
    float: right;
    color: #999;
    font-size: 0.65em;
    margin-right: 0.4em;
    margin-top: 0.25em;
}

.process-page h3 {
    font-style: italic;
    font-weight: bold;
    color: #333;
    font-size: 15px;
}

.process-page h4 {
    color: #666;
    font-size: 13px;
}

.process-page h1 span {
}

.process-page h1 small {
}

.process-page h2 {
    padding: 8px !important;
    margin-left: -5px;
    margin-right: -5px;
}

.process-page .sub-activity {
    padding: 6px 0 4px 0;
    border-bottom: 1px solid #eee;
}

.sub-activity p {
    margin-bottom: 0;
}


/* /PROCESS-PAGE */

/*
.redactor-in {
    padding: 1px 1px;
    margin: 0px 0px;
    border: 1px dashed rgba(0, 0, 0, .15);    
    background: #ffffcc;
}
*/
.process-page .k-list-container {
    padding-right: 25px;
    min-width: 600px;
}

.process-page .k-list .k-item, .process-page .k-animation-container {
    padding-right: 25px;
    min-width: 550px;
}

.process-page .process-description {
    padding-bottom: 10px;
    border-bottom: 1px solid #eee;
}


/* PILLS */

.nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus {
    color: black;
    background-color: #e7e7e7;
}

.page-header {
    font-size: 2.5em;
    margin-left: 5px;
}

.alert-boring {
    background-color: #f6f6f3;
    border-color: transparent;
    border-left: 3px solid #0f80db;
    color: #000;
}

.breadcrumb {
    margin-left: 5px;
}

.row-eq-height {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 767px) {

    .dl-horizontal dd {
        margin-left: 140px;
        /* margin-bottom: 5px; */
        vertical-align: top;
    }

    .dl-horizontal.company-info dd {
        /* margin-left: 120px !important; */
        margin-bottom: 2px;
        vertical-align: top;
    }

    .dl-horizontal dt {
        float: left;
        width: 120px;
        overflow: hidden;
        clear: left;
        text-align: right;
        text-overflow: ellipsis;
        vertical-align: top;
        max-width: 95%;
    }

    /* Specific lists */
    .dl-horizontal.employee-info dt {
        width: 75px;
    }

    .dl-horizontal.employee-info dd {
        margin-left: 90px !important;
        vertical-align: top;
    }

    /* Mobile main navigation redesign (attendee-facing) */

    /* Visible label next to the hamburger icon (hidden on desktop). Sized to
       16px -- matching the menu item text below -- so the toggle reads as an
       obvious, easy-to-read control rather than a small caption, per
       real-device feedback that 11-13px was still too small. Spacing from
       the icon comes from the parent's "gap" (see .tgl-menu-btn
       .mainnav-toggle below) rather than margin, so the icon+label pair is
       centered together as a single visual group instead of the label
       nudging itself off-center. */
    .mainnav-toggle-label {
        display: inline-block;
        font-size: 14px;
        line-height: 1;
        vertical-align: middle;
        white-space: nowrap;
        /* Live-tested downward optical adjustment for the smaller 14px
           icon/label pair (revised from 3px to 2px per real-device
           feedback showing the pair 1px too low at 3px): applied to the
           visible label span itself (not the ".mainnav-toggle" box, which
           keeps its own -4px transform and 48px hit box/centering
           untouched). */
        transform: translateY(2px);
    }

    /* Match the hamburger/close icon size to the larger label so the whole
       control reads as one visually-balanced, obvious touch target. No
       "display"/"align-items" override here: the icon is already a flex
       item of ".tgl-menu-btn .mainnav-toggle" (display:flex) below, and an
       earlier attempt to also set "display:inline-flex" here matched the
       ".mainnav-toggle .fa-bars, .mainnav-toggle .fa-times" selector, which
       has the same specificity as (and comes after) the closed-state
       ".mainnav-toggle .variant-close{display:none}" rule further down --
       so it was overriding the hidden close icon back to visible while the
       menu was closed, shifting the visible burger+"Meny" group off-center.
       Confirmed via live computed-style inspection on production. */
    .mainnav-toggle .fa-bars,
    .mainnav-toggle .fa-times {
        font-size: 14px;
        line-height: 1;
        /* Same live-tested downward optical shift as the label (2px,
           revised from 3px), applied to the icon glyph itself. Elements
           hidden via the ".variant-open"/".variant-close" "display:none"
           rules render nothing and take up no layout regardless of this
           transform, so the hidden variant continues to consume no space
           either way. */
        transform: translateY(2px);
    }

    /* Nifty renders an empty ".mainnav-toggle::after" pseudo-element (used
       for its own hover/caret styling elsewhere). As a flex item of
       ".tgl-menu-btn .mainnav-toggle" it still receives the row's "gap",
       nudging the visible icon+label pair ~4px off-center even with the
       fix above. Hiding it removes that phantom flex item entirely.
       Confirmed via live computed-style inspection: with this and the fix
       above, the toggle box center and the visible icon+label group center
       match exactly. */
    .mainnav-toggle::after {
        display: none;
    }

    /* Fix the toggle button's box size so swapping "Meny"/icon <-> "Lukk"/icon
       never reflows itself or sibling .navbar-top-links items -- this is a
       layout-stability / defense-in-depth measure only; it does not by
       itself guarantee correct open/close behavior on tap (see js/mu2.js for
       the actual touch/click handling). Width/padding below are sized for
       the longest label across all 5 supported languages at the 16px font +
       17px icon set above: "Закрити" (uk, close variant, 7 Cyrillic
       characters) is the widest; "Меню"/"Meny"/"Menu" (open variants) are
       all shorter. Padding is tightened from nifty's inherited "0 12px" to
       "0 6px" to reclaim horizontal room for the larger text/icon while
       keeping the box compact enough to leave room for the brand logo/title
       at 320px-wide viewports; touch comfort still comes from the 48px
       height, not the horizontal padding.
       ".tgl-menu-btn .mainnav-toggle" (two classes) is used, rather than a bare
       ".mainnav-toggle", so this out-specifies nifty.min.css's
       ".navbar-top-links>li>a{display:table-cell;...}" base rule. */
    .tgl-menu-btn {
        width: 140px;
        height: 48px;
        touch-action: manipulation;
    }

    /* Nifty positions ".tgl-menu-btn" via "top:-100%" relative to its
       ".navbar-content" parent (nifty.min.css), which only works out to the
       intended -40px because that row is normally 40px tall. For attendees
       the row above (mu_header.php's "#dropdown-user") is now hidden on
       mobile ("hidden-xs"), collapsing ".navbar-content" to 0 height, which
       makes "-100%" resolve to 0 and drops the toggle button below the dark
       header row instead of sitting inside it. Employees still render
       "#dropdown-user" on mobile, so their ".navbar-content" stays 40px tall
       and "-100%" already equals -40px for them -- making this explicit
       "-40px" a no-op for employees while fixing it for attendees. Applied
       generally (no attendee-only marker exists on <body>) since it merely
       spells out Nifty's own intended geometry rather than changing it.
       Verified live at production (v1.27): restores the toggle to the dark
       row in both the closed "Meny" and open "Lukk" states. */
    .navbar-top-links .tgl-menu-btn {
        top: -40px;
    }

    /* Hiding "#dropdown-user" for attendees collapses ".navbar-content" to 0
       height (see above), which is exactly what we want for the header row
       itself -- but "#content-container" (mu_header.php) still reserves
       "padding-top:80px" for the old two-row header (40px ".navbar-header"
       + 40px ".navbar-content"). Left as-is, that leaves an obsolete 40px
       blank strip above the page content. Scoped to ".mu-attendee-layout"
       (the "#container" marker mu_header.php adds only when "$is_attendee"
       is true) so employees/admins -- whose ".navbar-content" still renders
       "#dropdown-user" and stays 40px tall -- keep the original 80px
       offset unchanged. Verified live at production: 40px matches the
       collapsed single-row header height and preserves "#page-content"'s
       own internal spacing untouched. */
    .mu-attendee-layout #content-container {
        padding-top: 40px;
    }

    .tgl-menu-btn .mainnav-toggle {
        display: flex;
        align-items: center;
        /* Right-align the icon+label group within the 140px box instead of
           centering it: the toggle box itself is flush with the navbar's
           right edge, but centering left a large (~35px) gap between the
           visible group and that edge. Right-aligning with 16px of right
           padding puts the group a consistent 16px from the navbar edge,
           matching the app's usual edge spacing (confirmed via live
           computed rects on production: label right edge exactly 16px from
           navbar right edge after this change). */
        justify-content: flex-end;
        gap: 8px;
        width: 140px;
        height: 48px;
        min-height: 48px;
        padding: 0 16px 0 6px;
        box-sizing: border-box;
        overflow: hidden;
        white-space: nowrap;
        touch-action: manipulation;
        /* The enlarged 48px-tall toggle box shares its top edge with the
           40px-tall .navbar-brand row, so its vertical center sits 4px lower
           than the brand/header row's center (confirmed via live computed
           rects on production: brand centerY 24.6667px vs toggle centerY
           28.6667px at a 570px viewport). Shifting the toggle content up by
           that same 4px realigns the visible icon+label group with the
           header row without changing the 48px touch-target box itself. */
        transform: translateY(-4px);
    }

    /* When the full-screen mobile nav is open, swap the hamburger/"Meny" for a
       clear close icon/label so users understand tapping again closes it */
    #container.mainnav-in .mainnav-toggle .variant-open {
        display: none;
    }

    #container.mainnav-in .mainnav-toggle .variant-close {
        display: inline-block;
    }

    /* Hide the Office365 quick-links group in the mobile drawer */
    .mu-office365-menu-group {
        display: none;
    }

    /* Full-screen overlay for the mobile nav drawer instead of Nifty's narrow slide-in panel */
    #container.mainnav-in #mainnav-container {
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1050;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    /* Larger tap targets for low-literacy/touch users */
    #mainnav-menu li > a {
        padding: 14px 20px;
        min-height: 48px;
        box-sizing: border-box;
        line-height: 1.4;
    }

    /* Rows are exactly/minimum 48px (padding+min-height above); no extra
       inter-row margin is added on top of that so the list reads as one
       dense, evenly-spaced column instead of accumulating extra gaps
       between every item. */
    #mainnav-menu > li {
        margin-bottom: 0;
    }

    /* Menu item labels inherit the 13px body font-size with no explicit
       override in nifty.min.css. Bump to 16px -- the same scale as the
       "Meny"/"Lukk" toggle label -- so the whole mobile nav reads at one
       consistent, easy-to-read size. The 48px min-height + 14px padding
       above comfortably fits this larger text on one line (even for the
       longest item, "Oppstartskartlegging", in the full-screen overlay at
       320px-wide viewports); line-height 1.4 above keeps it airy without
       needing extra padding. */
    #mainnav-menu li > a .menu-title {
        font-size: 16px;
    }

    /* "Deltakerportal"/"Informasjon" section headers use the shared
       ".mu-attendee-mobile-listheader" contrast override below. The very
       first one ("Deltakerportal") sits at the top of an already long
       mobile list, so it's additionally compacted to a slim ~32px divider
       row via this second class -- distinct from ".mu-attendee-mobile-
       listheader" so "Informasjon" (mid-list) keeps its normal row size. */
    .mu-attendee-mobile-top-heading {
        padding-top: 6px;
        padding-bottom: 6px;
        min-height: 0;
    }

    /* Attendee-only mobile account content ("Kontakt og konto" panel,
       mu_menu.php). This duplicates what #dropdown-user (mu_header.php)
       shows, since that dropdown is hidden on mobile for attendees below to
       reclaim the second cramped header row. There is no identity/photo
       card at the top of the mobile menu (removed) -- the participant
       number instead lives inside this panel, alongside the privacy link
       and logout button, under one combined heading rather than two
       separate "Kontakt"/"Din konto" list-header rows. */

    /* "Deltakerportal"/"Informasjon" section headers (main navigation): the
       surrounding dark background is the same #263238 used throughout the
       mobile menu, but the base ".list-header" rule alone measured only
       3.18:1 there (rgb(116,126,136)) -- below the 4.5:1 minimum for
       normal-size text. This override bumps it to the same #abb1b7 used
       elsewhere in this menu (6.08:1 on #263238) and a slightly larger/
       bolder weight to keep it visually distinct as a section heading
       rather than a regular nav row. */
    .mu-attendee-mobile-listheader {
        color: #abb1b7;
        font-size: 14px;
        font-weight: 600;
    }

    /* Wrapping "<li>" for the whole combined "Kontakt og konto" panel: one
       rounded, visually inset block instead of several disjoint list-header
       rows. "overflow:hidden" lets the border-radius clip its children's
       square corners without needing radius on each individual row. */
    /* Panel spans the full menu width (no outer horizontal margin) so its
       heading text baseline can align with "Deltakerportal"/other section
       headings above it. No outer top margin either -- the 12px breathing
       room above the heading is rendered as internal padding instead, so
       the panel's dark #202b31 background (not the lighter surrounding
       menu background) shows through that gap. */
    .mu-attendee-mobile-panel {
        margin: 0 0 16px;
        padding-top: 12px;
        box-sizing: border-box;
        border-radius: 10px;
        background-color: rgba(255, 255, 255, 0.04);
        overflow: hidden;
    }

    /* "#mainnav-menu .mu-attendee-mobile-panel" (ID + class) so the panel
       background reliably beats any other rule targeting this same "<li>"
       inside "#mainnav-menu". Darker than the surrounding #263238 menu
       background so the panel reads as a distinct inset surface, and dark
       enough (relative to the #2d3b42 action/button fill below) that those
       controls stand out clearly against it rather than blending in. */
    #mainnav-menu .mu-attendee-mobile-panel {
        background-color: #202b31;
    }

    /* One heading for the whole panel (replaces the previous separate
       "Kontakt" and "Din konto" list-header rows). Left padding 15px so its
       text baseline lines up exactly with "Deltakerportal"/other section
       headings above it. Deliberately matched to ".mu-attendee-mobile-
       listheader" 1:1 (same #747e88 color, 14px/600, 6px 15px padding,
       20px line-height => 32px total height) -- the user explicitly chose
       this dimmer, ~3.18:1 color for visual consistency with the existing
       "Deltakerportal" section headings, rather than brightening this
       heading to the ~6.08:1 #abb1b7 used for those headings' own
       accessibility override. Do not "fix" this to #abb1b7. */
    .mu-attendee-mobile-panel-heading {
        padding: 6px 15px;
        color: #747e88;
        font-size: 14px;
        font-weight: 600;
        line-height: 20px;
    }

    /* Shared tighter padding for each content block inside the panel
       (coach card, participant row) -- 16px rather than the 20px used by
       the rest of the mobile menu, to keep the panel visually compact. */
    .mu-attendee-mobile-panel-section {
        padding: 8px 16px;
        box-sizing: border-box;
    }

    /* Coach contact card gets a taller top padding (14px vs. the shared
       8px above) so the gap under the heading matches the ~14.67px gap
       measured between "Deltakerportal" and its first item ("Din
       læring"); other sides keep the shared section padding. */
    .mu-attendee-mobile-contact-card {
        padding-top: 14px;
    }

    /* Subtle divider between the Kontakt block and the account details
       that follow it (only rendered when a coach card precedes it). Extra
       10px bottom margin gives the divider a clear 10px gap before the
       Logg ut button, so the line reads as a group separator rather than
       looking like the button's top border. */
    .mu-attendee-mobile-panel-divider {
        margin: 4px 16px 10px;
        border-top: 1px solid rgba(255, 255, 255, 0.1);
    }

    /* Coach contact card: name on its own line, followed by explicit
       tel:/mailto: action buttons rather than wrapping the whole card in
       one link (avoids nested-anchor markup and lets each action be
       unambiguous). Not a <a>, so no hover/active link coloring applies to
       the wrapping <div>. Name color (#abb1b7) measures 6.08:1 on the
       #263238 mobile menu background. */
    .mu-attendee-mobile-contact-name {
        font-size: 16px;
        line-height: 1.4;
        color: #abb1b7;
        margin: 0 4px 10px;
    }

    /* Side-by-side when there's room; wraps to stacked rows at very narrow
       widths (down to 320px) rather than clipping or overflowing. */
    .mu-attendee-mobile-contact-actions {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
    }

    .mu-attendee-mobile-contact-action {
        display: flex;
        align-items: center;
        justify-content: center;
        flex: 1 1 auto;
        min-width: 120px;
        min-height: 48px;
        padding: 10px 14px;
        box-sizing: border-box;
        font-size: 15px;
        color: #fff;
        background-color: #2d3b42;
        border-radius: 4px;
        white-space: nowrap;
    }

    /* Vendor nifty.min.css's "#mainnav-menu a{display:block;color:#abb1b7;
       padding:12px 20px}" is an ID+tag selector, which outranks a class-only
       rule -- these action links were computing "display:block"/muted text/
       vendor padding despite the rule above. Re-declared at
       "#mainnav-menu .class" (ID + class) specificity, matching vendor's
       own approach, rather than reaching for "!important". */
    #mainnav-menu .mu-attendee-mobile-contact-action {
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 10px 14px;
        color: #fff;
        background-color: #2d3b42;
    }

    .mu-attendee-mobile-contact-action:hover,
    .mu-attendee-mobile-contact-action:focus,
    .mu-attendee-mobile-contact-action:active {
        color: #fff;
        background-color: #0c80df;
    }

    #mainnav-menu .mu-attendee-mobile-contact-action:hover,
    #mainnav-menu .mu-attendee-mobile-contact-action:active {
        color: #fff;
        background-color: #0c80df;
    }

    /* Explicit visible focus indicator (keyboard/assistive nav), at the
       same "#mainnav-menu .class" specificity as the base rule above. */
    #mainnav-menu .mu-attendee-mobile-contact-action:focus {
        color: #fff;
        background-color: #0c80df;
        outline: 2px solid #fff;
        outline-offset: -2px;
    }

    .mu-attendee-mobile-contact-action .fa-fw {
        margin-right: 6px;
    }

    /* Privacy link: demoted to a quiet, secondary footer-style link below
       the logout button rather than a prominent full-emphasis nav row.
       Centered, smaller (13px) text with an explicit underline for clear
       link affordance, since it's plain text with no icon. Kept as a
       normal "<a>" (not de-linked) so its full row remains one wide,
       >=44px tap target -- the shared "#mainnav-menu li > a" padding/
       min-height (14px 20px / 48px) already used by every other row in
       this menu comfortably covers that minimum. Re-declared at
       "#mainnav-menu .class" specificity (see contact-action/logout-btn
       above) since vendor's "#mainnav-menu a{color:#abb1b7}" is an ID+tag
       selector that would otherwise contest the color/alignment here. */
    .mu-attendee-mobile-panel-link-secondary {
        display: block;
        text-align: center;
        font-size: 13px;
        line-height: 1.4;
        text-decoration: underline;
        color: #abb1b7;
    }

    #mainnav-menu .mu-attendee-mobile-panel-link-secondary {
        text-align: center;
        font-size: 13px;
        text-decoration: underline;
        color: #abb1b7;
        margin: 4px 0;
    }

    .mu-attendee-mobile-panel-link-secondary:hover,
    .mu-attendee-mobile-panel-link-secondary:focus,
    .mu-attendee-mobile-panel-link-secondary:active,
    #mainnav-menu .mu-attendee-mobile-panel-link-secondary:hover,
    #mainnav-menu .mu-attendee-mobile-panel-link-secondary:active {
        color: #fff;
        background-color: rgba(255, 255, 255, 0.06);
    }

    /* Explicit visible focus indicator (keyboard/assistive nav), matching
       the pattern used by the contact/logout buttons above. */
    #mainnav-menu .mu-attendee-mobile-panel-link-secondary:focus {
        color: #fff;
        background-color: rgba(255, 255, 255, 0.06);
        outline: 2px solid #fff;
        outline-offset: -2px;
    }

    /* Logout: deliberately NOT styled as a red/danger action -- logging out
       isn't destructive, and red risks reading as an error or warning to
       low-digital-literacy attendees. Uses the same quieter filled
       secondary treatment as the coach contact actions above (rather than
       the previous bordered/outlined box) while remaining the last, full-
       width, clearly legible row in the panel with a >=48px tap target
       (shared with the rest of "#mainnav-menu li > a"). */
    .mu-attendee-mobile-logout-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        gap: 8px;
        margin-left: 16px;
        margin-right: 16px;
        padding: 10px 14px;
        color: #fff;
        background-color: #2d3b42;
        border-radius: 4px;
        font-size: 16px;
        font-weight: 600;
    }

    /* Same vendor "#mainnav-menu a{display:block;color:#abb1b7;
       padding:12px 20px}" specificity issue as the contact actions above:
       re-declared at "#mainnav-menu .class" specificity rather than
       "!important". Now inset with 16px left/right margin and 4px radius
       to match the contact-action group's outer edges/corners exactly
       (confirmed live: both x16..538.33 at a 570px viewport) rather than
       running edge-to-edge, plus a 10px/14px padding to match the contact
       buttons' own padding -- the 48px tap-target height is still enforced
       as a floor by "#mainnav-menu li > a"'s "min-height:48px" (box-sizing:
       border-box), and vertical centering still comes from this rule's own
       "align-items:center". Also pins the label at 16px -- the text sits
       directly in the anchor (no ".menu-title" wrapper), so it was
       inheriting the smaller ~13px base anchor size instead of matching
       the rest of the menu's primary labels. */
    #mainnav-menu .mu-attendee-mobile-logout-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        margin-left: 16px;
        margin-right: 16px;
        padding: 10px 14px;
        color: #fff;
        background-color: #2d3b42;
        border-radius: 4px;
        font-size: 16px;
    }

    .mu-attendee-mobile-logout-btn:hover,
    .mu-attendee-mobile-logout-btn:focus,
    .mu-attendee-mobile-logout-btn:active {
        color: #fff;
        background-color: #34444c;
    }

    #mainnav-menu .mu-attendee-mobile-logout-btn:hover,
    #mainnav-menu .mu-attendee-mobile-logout-btn:active {
        color: #fff;
        background-color: #34444c;
    }

    /* Explicit visible focus indicator (keyboard/assistive nav), at the
       same "#mainnav-menu .class" specificity so it isn't lost to the
       vendor "#mainnav-menu a" rule either. */
    #mainnav-menu .mu-attendee-mobile-logout-btn:focus {
        color: #fff;
        background-color: #34444c;
        outline: 2px solid #fff;
        outline-offset: -2px;
    }

    /* Participant number, moved after logout to sit as the panel's final
       non-interactive footer/metadata line rather than a prominent account
       row. Plain centered text, no icon/bold/border/button affordance --
       deliberately de-emphasized relative to the full-width logout button
       above it. #abb1b7 keeps the same accessible muted color used
       elsewhere in this panel. */
    .mu-attendee-mobile-panel-footer {
        padding: 10px 16px;
        text-align: center;
        font-size: 12px;
        font-weight: normal;
        color: #abb1b7;
    }

    /* Hiding #dropdown-user (mu_header.php) leaves its parent
       ".navbar-content .pull-right" <ul> empty for attendees on mobile.
       Floats/clearfix (".navbar-content" already carries "clearfix" in
       mu_header.php) should collapse that empty <ul> to zero height on
       their own, so no extra CSS should be needed here to avoid a blank
       strip above the full-screen menu overlay. Flagged for live-device
       verification along with the rest of this change, consistent with
       how the rest of this feature has been validated. */
}

@media screen and (min-width: 768px) {
    .dl-horizontal {
        max-width: 99%;
    }

    .dl-horizontal dd {
        margin-left: 180px;
        /* margin-bottom: 5px; */
        vertical-align: top;
    }

    .dl-horizontal dt {
        float: left;
        width: 150px;
        overflow: hidden;
        clear: left;
        text-align: right;
        text-overflow: ellipsis;
        margin-bottom: 2px;
        vertical-align: top;
    }

    /* Specific lists */
    .dl-horizontal.employee-info dt {
        width: 85px;
    }

    .dl-horizontal.employee-info dd {
        margin-left: 100px !important;
        vertical-align: top;
    }

    .dl-horizontal.kpi-info dt {
        width: 125px;
    }

    .dl-horizontal.kpi-info dd {
        margin-left: 140px !important;
        margin-bottom: 2px;
        vertical-align: top;
    }
}

@media print {
    .dl-horizontal {
        max-width: 93%;
    }

    .dl-horizontal dd {
        margin-left: 180px;
        margin-bottom: 5px;
        vertical-align: top;
    }

    .dl-horizontal dt {
        float: left;
        width: 150px;
        overflow: hidden;
        clear: left;
        text-align: right;
        text-overflow: ellipsis;
        margin-bottom: 5px;
        vertical-align: top;
        max-width: 95%;
    }
}

@media screen and (max-width: 768px) {

    /* Special tabs for mobile */
    #page-content > .tab-base > .nav-tabs > li {
        margin-bottom: -2px;
        width: 50%;
        overflow-y: hidden !important;
    }

    #page-content > .tab-base > .nav-tabs > li .badge {
        display: none;
    }

    .inner-tabs > .nav > li > a {
        padding: 10px 4px;
    }

    .inner-tabs > .nav > li[role="presentation"] {
        display: none;
    }

    .mobile-only {
        display: inline-block;
    }

    /* Special timeline for mobile */
    .timeline {
        padding-bottom: 0;
    }

    .timeline:before {
        background: transparent;
    }

    .timeline:after {
        display: none;
    }

    .timeline > .timeline-entry > .timeline-stat {
        display: none;
    }

    .panel .private-entry .timeline-label, .panel .timeline-label, .timeline-label {
        margin-left: 0 !important;
    }

    /* */
    .panel-heading .panel-control .btn .button-text {
        display: none;
    }

    .panel-body .qr-code {
        display: none; /* no use showing on the mobile */
    }

    /* attendee_learning_module special */
    .webinar-lecturer {
        margin-left: 25px;
    }

}

#new_activity_form .select2-container--default .select2-selection--multiple .select2-selection__choice {
    color: #000;
    background-color: #f3f3f3;
}

.magic-checkbox + label:not(:empty) {
    /* padding: 0 26px !important; */
}

.list-item-sm {
    padding: 10px 10px;
}

.panel-body .list-group ul {
    /*border-left: 2px solid #ddd;
    background-color: #f1f1f1; */
    list-style-type: square;
    padding: 6px 1.5em;
}


/* CRUMBS */

#process {
    background-color: #ddd;
    padding-top: 20px;
    padding-bottom: 20px;
    border-radius: 10px;
    text-align: center;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

#crumbs {
    text-align: center;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

#process ul {
    list-style: none;
    display: inline-table;
    padding-left: 0;
}

#process ul li {
    display: inline;
}

#crumbs ul {
    margin-bottom: 5px;
}

#crumbs ul li a:after {
    content: "";
    border-top: 40px solid transparent;
    border-bottom: 40px solid transparent;
    border-left: 40px solid #127245;
    position: absolute;
    right: -40px;
    top: 0;
    z-index: 1;
}

#crumbs ul li a:before {
    content: "";
    border-top: 40px solid transparent;
    border-bottom: 40px solid transparent;
    border-left: 40px solid #ddd;
    position: absolute;
    left: 0;
    top: 0;
}

#crumbs ul li:first-child a:before {
    display: none;
}

#crumbs ul li:last-child a {
    padding-right: 20px;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}

#crumbs ul li:last-child a:after {
    display: none;
}

#crumbs ul.active li a {
    background: #1EBE73;
}

#crumbs ul li a:hover {
    background: #1EBE73;
}

#crumbs ul li a:hover:after {
    border-left-color: #1EBE73;
}

#crumbs ul li:first-child a {
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    padding-left: 20px;
    min-width: 70px;
}

#crumbs ul li a {
    display: block;
    float: left;
    height: 80px;
    background: #127245;
    text-align: center;
    padding: 0px 0px 0 50px;
    position: relative;
    margin: 10px 7px 0 0;
    font-size: 0.85em;
    text-decoration: none;
    color: #fff;
    vertical-align: middle;
}

#crumbs span.potp {
    display: table-cell;
    height: 80px;
    vertical-align: middle;
}

#process .underbar {
    display: inline-block;
    padding: 8px;
    height: 40px;
    min-width: 400px;
    background-color: #127245;
    border-radius: 10px;
    color: white;
}

#process .underbar:hover {
    background-color: #1EBE73;
}

#process .underbar li a {
    text-decoration: none;
    color: #fff;
    vertical-align: middle;
    display: inline-block;
    min-width: 400px;
    font-size: 0.85em;
}


h4 {
    margin-top: 20px;
    font-size: 1.2em;
    margin-bottom: 0.75em;
}

.panel h4:first-of-type {
    margin-top: 0px;
    padding-top: 10px;
    /*    padding-bottom: 8px; */
}


.redactor-dropdown .redactor-dropdown-h4-add {
    font-size: 1.2em;
}


.blueimp-gallery > .description {
    position: absolute;
    top: 30px;
    left: 15px;
    color: #fff;
    display: none;
}

.blueimp-gallery-controls > .description {
    display: block;
}

.redactor-styles {
    font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 13px;
    line-height: 15px;
    color: #000;
}

.redactor-toolbar {
    box-shadow: none;
}

.select2-container--open {
    z-index: 9999999
}

#article-tools-area .k-grid tbody tr {
    height: 25px;
}

#article-tools-area .k-grid td[role='gridcell'] {
    white-space: nowrap;
}

.panel-body a:hover {
    text-decoration: underline;
}

.tool-panel {
    margin-bottom: 8px;
}

.tool-description h4, .tool-description .panel-control {
    padding-top: inherit !important;
    font-size: 1.15em;
}

.tool-description h4 small {
    font-size: 0.85em;
}

.tool-instruction {
}

.k-grid tbody tr {
    /* cursor: move; */
}

.placeholder {
    outline-style: dotted;
    outline-width: 1px;
    outline-color: red;
}

#screenshot {
    position: absolute;
    border: 1px solid #ccc;
    background: #fff;
    padding: 5px;
    display: none;
    color: #fff;
}

#screenshot img {
    max-height: 600px;
}

.panel-body ul, .panel-body ol {
    padding-left: 1.5em;
}

.nobr {
    white-space: nowrap;
}


.resume-period {
    width: 135px;
    text-align: right;
}

.panel-small-resume-title {
    font-size: 1.1em !important;
}

.resume-skill-btn {
    width: 19%;
    text-align: center;
    font-size: 75%;
    margin: 0 1% 0 0;
}

.skill-level-0-btn:hover, .skill-level-0-btn.skill-level-selected {
    background-color: #DCDDDE;
    color: black;
    /*text-decoration: underline;*/
    border-bottom: 1px solid #999;
}

.skill-level-0-btn {
    background-color: #DCDDDE;
    color: black;
}

.skill-level-1-btn, .skill-level-1-btn:hover {
    color: black;
    background-color: #D9E25A;
}

.skill-level-1-btn {
    color: black;
    background-color: #DCDDDE;
}

.skill-level-1-btn:hover, .skill-level-1-btn.skill-level-selected {
    background-color: #D9E25A;
}

.skill-level-2-btn {
    color: black;
    background-color: #DCDDDE;
}

.skill-level-2-btn:hover, .skill-level-2-btn.skill-level-selected {
    background-color: #1EBE73;
    color: white;
}

.skill-level-3-btn {
    color: black;
    background-color: #DCDDDE;
}

.skill-level-3-btn:hover, .skill-level-3-btn.skill-level-selected {
    color: white;
    background-color: #006543;
}

.skill-level-4-btn, .skill-level-4-btn:hover {
    color: black;
    background-color: #DCDDDE;
}

.skill-level-4-btn:hover, .skill-level-4-btn.skill-level-selected {
    color: white;
    background-color: #519FD7;
}

.nav-tabs .badge-soft {
    background-color: #bbbbbb;
}

.list-item-sm {
    padding: 5px 15px;
}

/* CALENDAR */

#container .fc-toolbar h2 {
    font-weight: 600;
    padding-top: 9px;
    /*font-size: 14px;*/
}

.fc-time-grid-event.fc-short .fc-attendee, .fc-time-grid-event.fc-short .fc-company, .fc-time-grid-event.fc-short .fc-project {
    display: inline-block;
    vertical-align: top;
    font-size: .85em;
    padding: 0;
}

.fc-time-grid-event.fc-short .fc-prefix {
    display: none;
}

.fc-time-grid-event .fc-time {
    display: inline-block;
    margin-bottom: 2px;
}

.fc-time-grid-event .fc-attendee::before {
    content: "\0A";
    white-space: pre;
}

.fc-time-grid-event .fc-company::before {
    content: " - ";
}

.fc-time-grid-event.fc-short .fc-company::before {
    padding-left: 3px;
    content: '- ';
    white-space: inherit;
}

.fc-time-grid-event.fc-short .fc-attendee::before {
    /* margin-left: 3px; */
    content: " (";
}

.fc-time-grid-event.fc-short .fc-attendee::after {
    content: ")";
}

.fc-time-grid-event .fc-project, .fc-time-grid-event.fc-short .fc-project {
    /* Exclude Project for now */
    display: none;
}

.fc-daygrid-day-frame {
    overflow: hidden;
}

a.fc-daygrid-event {
    color: inherit;
}


/* Idiotic hack */

/*
    @media screen and (-webkit-min-device-pixel-ratio:0) {
        select, textarea, input {
            font-size: 16px !important;
        }
    }
*/


.file-list .file-name, .popover.mainnav-shortcut, .username {
    white-space: nowrap
}

.file-list .file-name, .label-table, .panel-title, .card-title, .text-overflow {
    text-overflow: ellipsis
}

#container .invoice-summary tbody > tr > td, .file-list .media-block .media-body {
    vertical-align: middle
}


.file-sidebar .list-group-items {
    padding: 10px
}

.file-list {
    list-style: none;
    padding: 20px 0
}

.file-list > li {
    position: relative;
    padding: 12px;
    border-radius: 1px
}

.file-list > li:after {
    content: '';
    display: table;
    clear: both
}

.file-list > li:nth-child(odd) {
    background-color: rgba(0, 0, 0, .025)
}

.file-list > li:hover {
    background-color: rgba(0, 0, 0, .05)
}

.file-list > li.selected {
    background-color: #f2f0c2
}

.file-list .file-control {
    float: left;
    width: 50px;
    line-height: 3em
}

.file-list .media {
    overflow: hidden;
    margin: 0 20px 0 0
}

.file-list .media-block > .media-left {
    font-size: 2.5em;
    line-height: 1.2em
}

.file-list .file-details {
    display: block;
    overflow: hidden;
    margin-right: 50px
}

.file-list .file-name {
    color: #4d627b;
    margin-bottom: 0;
    font-weight: 700;
    display: block;
    overflow: hidden
}

.file-list .file-desc {
    color: #000000;
    margin-bottom: 0;
    font-weight: 500;
    display: block;
    overflow: hidden
}

.file-list .file-name.single-line, .file-list .file-desc.single-line {
    line-height: 2.5em
}

.file-list .file-settings {
    float: right;
    font-size: 85%;
    text-align: right
}

.file-list .file-settings a, .file-list .file-settings button {
    padding: 10px 5px;
    display: inline-block
}

.file-panel {
    border-top: 1px solid rgba(0, 0, 0, .07);
    margin-top: 20px
}

.file-toolbar {
    padding: 5px 0;
    text-align: center
}

.file-toolbar > .btn-file-toolbar {
    padding: 0;
    display: inline-block;
    float: none !important
}

.file-toolbar > .btn-file-toolbar .btn {
    padding: 6px
}

@media (min-width: 768px) {
    .file-panel {
        border-top: 0;
        margin-top: 0
    }

    .file-manager .file-sidebar {
        padding-right: 15px;
        border-right: 1px solid rgba(0, 0, 0, .07)
    }

    .file-toolbar {
        padding: 5px 0;
        text-align: left
    }

    .file-toolbar > .btn-file-toolbar {
        padding: 0 10px;
        display: inline-block
    }

    .file-toolbar > .btn-file-toolbar.pull-right {
        float: right !important
    }

    .file-toolbar > .btn-file-toolbar:not(:first-child) {
        border-left: 1px solid rgba(0, 0, 0, .07)
    }

    .file-toolbar > .btn-file-toolbar:first-child {
        padding-left: 0
    }
}

.file-list {
    list-style: none;
    padding: 0 0 20px;
}

.tab-base {
    margin-bottom: 15px;
}

.inner-tabs.tab-base {
    margin-bottom: 8px;
}

.inner-tabs > ul > li:not(.active) > a {
    border: 1px solid transparent !important;
    border-bottom: 3px solid transparent !important;
    /*background-color: rgba(255,255,255,0.5) !important;*/
    background-color: transparent !important;
}

.inner-tabs > ul > li.active > a, .inner-tabs > ul > li.active > a:active {
    border: 1px solid transparent !important;
    margin-bottom: 1px;
    border-bottom: 3px solid #99ccff !important;
    background-color: transparent !important;
}

.inner-tabs > ul > li.active > a:hover {
    /*background-color: rgba(255,255,255,0.5) !important;*/
    background-color: transparent !important;
}

.inner-tabs > ul > li:not(.active) > a:hover {
    /*background-color: transparent;*/
    background-color: transparent !important;
}

.inner-tabs.tab-content {
    margin-top: 1em;
    background-color: transparent !important;
    box-shadow: 0 0 0 rgba(0, 0, 0, 0);
    border: 0 !important;
    padding: 0 !important;
}

.inner-tabs .form-control.narrow {
    padding: 5px 12px !important;
    border-radius: 4px;
}

.inner-tabs .inner-window {
    margin: 15px 20px;
    margin-top: 0;
    padding-top: 10px;
    border-top: 1px solid #eeeeff;
}

.nav-tabs li a i.fa, .nav-tabs li a i.far, .nav-tabs li a i.fas, .nav-tabs li a i.fal {
    margin-right: 0.3em;
}


.activity-tags > .taglist {
    display: inline-block;
    margin-top: 10px;
}

.panel .private-entry .timeline-label {
    box-shadow: none;
    border: 0;
    background-color: #f9fcee;
    margin-left: 100px;
}

.panel .private-entry .timeline-label:after {
    border-right-color: #f9fcee;
}

.select2-selection {
    border: 1px solid rgba(0, 0, 0, .07) !important;
}

.select2-container--default.select2-container--focus .select2-selection--multiple {
    border: 1px solid #ccc !important;
}

/* Bootstrap Slider */
.slider.slider-horizontal .slider-tick-label-container .slider-tick-label {
    font-size: 85% !important;
}

/* Autocomplete overrides */

.ui-autocomplete.ui-widget {
    font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 13px;
    line-height: 15px;
    color: #000;
    border: 1px solid #0c80df;
    border-radius: 1px;
}

.ui-autocomplete.ui-widget-content {
    border: 1px solid #aaaaaa;
    background: #ffffff;
    color: #222222;
}

.ui-autocomplete .ui-corner-all {
    border-radius: 2px;
}

.ui-autocomplete .ui-corner-all a {
    background-color: #eee;
}

.ui-autocomplete .ui-state-focus a {
    background-color: #eee !important;
}

.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus {
    background-color: #eee !important;
}

/* Kendo overrides */

.k-datepicker {
    width: 100%;
}

.k-picker-wrap .k-input {
    border-radius: 3px 0 0 3px;
    padding: 5px;
}

.select2-container--default .select2-selection--single {
    height: 32px;
}

.chart {
    position: relative;
    display: inline-block;
    width: 110px;
    height: 110px;
    text-align: center;
}

.chart canvas {
    position: absolute;
    top: 0;
    left: 0;
}

.percent {
    top: 37px;
    display: inline-block;
    /* line-height: 20px; */
    z-index: 2;
    position: relative;
}

.percent:after {
    content: '\%\A formidling';
    white-space: pre-wrap; /* or pre-wrap */
    margin-left: 0.1em;
    font-size: .8em;
}

/* Links that need to look like links */
.delete_report_button {
    cursor: pointer
}

.text-red {
    color: #ff0000;
}

.text-orange {
    color: #ffaa11;
}

.text-task-orange {
    color: #CCCC00;
}

.text-blue {
    color: #005ebd;
}

.text-green {
    color: #127245;
}

.text-bright-green {
    color: #1ebe73;
}

.prediction {
    color: #bbbbbb;
}

/* Poller -- BS4 */

.card-title {
    font-weight: 600;
    padding: 0 20px 0 20px;
    font-size: 1.1em;
    line-height: 50px;
    white-space: nowrap;
    overflow: hidden;
    margin: 0 !important;
}

.card-header {
    padding: 0 !important;
    margin: 0 !important;
}

.card-footer {
    padding-bottom: 0 !important;
    margin: 0 !important;
}

.tooltip-class {
    display: inline-block;
    text-align: center;
    width: 85px;
    border: 0;
    height: 2.5em;
    background-color: transparent;
    color: #ffffff !important;
    font-size: 10px;
    margin: 2px;
    margin-right: 5px;
}

#result_history {
    color: #000;
}

.taskmodule-list {
    list-style: none;
    padding: 0;
}

ul.taskmodule-list {
    padding-left: 0;
}

.taskmodule-list li {
    padding-left: 1.5em;
    position: relative;
    line-height: 1.4em;
}

.icon-area {
    color: #AAAAAA;
}

.taskmodule-list .icon-area {
    position: absolute;
    left: 0;
    color: #AAAAAA;
}

.workshop_item {
    margin-bottom: 0.5em;
}

img[src*="gstatic.com/"], img[src*="googleapis.com/"] {
    max-width: none !important;
    max-height: none !important;
}

.breadcrumb {
    border-radius: 0;
    background-color: transparent;
    margin-bottom: 0;
    padding: 0 20px 10px;
    font-size: 1em;
}

.breadcrumb li, .breadcrumb li a {
    color: #afb9c3;
}

.breadcrumb li a:hover {
    color: #03a9f4;
    text-decoration: underline
}

.breadcrumb > li + li:before {
    content: "";
    border-color: #4d627b;
    border-style: solid;
    border-width: .1em .1em 0 0;
    display: inline-block;
    height: .55em;
    left: 0;
    position: relative;
    top: -.1em;
    width: .55em;
    padding: 0;
    margin-left: 1ex;
    margin-right: 1.7ex;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    /* transform:rotate(45deg); */
}

.breadcrumb .active {
    font-weight: 500;
    color: #4d627b
}

.help-block {
    margin-bottom: 0 !important;
}

#survey-wizard .row {
    margin: 0 7.5px;
}

#confirm_dw_form hr {
    margin: 15px 0;
}


.k-grid .inactive_period {
    color: #AAAAAA
}

.k-grid .inactive_period.replaced {
    text-decoration: line-through;
}

.modal.in .modal-body div.row {
    margin: 5px 7.5px;
}

.checkbox.tight {
    margin: auto 0px;
}

.white, a:hover.white {
    color: #fff;
}

a.white {
    text-decoration: underline;
}

/* FullCalendar */

a.fc-event:focus {
    color: #fff !important;
}

a.fc-event:hover {
    text-decoration: none;
}

.fc-header-toolbar h2, .fc-toolbar-title {
    font-size: 16px !important;
}

.fc-event-main {
    overflow: hidden;
}

.fc-event-title a {
    color: inherit;
}

.pretty-split-pane-frame {
    height: 2000px;
}

.pretty-split-pane-frame #right-component .pretty-split-pane-component-inner {
    overflow: visible;
    height: auto;
}

.pretty-split-pane-frame #left-component {
    width: 44em; /* Same as divider left */
}

.pretty-split-pane-frame #my-divider {
    left: 44em;
    width: 5px;
}

.pretty-split-pane-frame #right-component {
    left: 44em; /* Same as divider left */
    margin-left: 5px; /* Same as divider width */
    overflow: auto;
}

.k-state-selected a:not(.btn) {
    text-decoration: none;
    color: #ffffff;
    outline: 0;
}

.k-state-selected .text-red {
    color: inherit;
}


/* Flexbox setup */

@media only screen and (min-width: 481px) {
    .flex-row.row {
        display: flex;
        flex-wrap: wrap;
    }

    .flex-row.row > [class*='col-'] {
        display: flex;
        flex-direction: column;
    }

    .flex-row.row:after,
    .flex-row.row:before {
        display: flex;
    }
}

.flex-row .flex-thumbnail,
.flex-row .flex-caption {
    flex: 1 0 auto;
    flex-direction: column;
}

.flex-text {
    flex-grow: 1
}

.flex-row img {
    height: auto;
    width: 100%
}

.widget-body {
    padding: 25px 10px 15px;
    position: relative;
}

.module-title {
    padding-top: 3px;
    height: 3em;
    overflow-y: hidden;
    overflow-x: hidden;
    display: inline-grid;
    align-items: center;
    justify-content: center;
}

.module-description {
    padding-top: 5px;
    height: 3.3em;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.widget-footer {
    border-top: 1px solid #ddd;
    padding-top: 10px;
    padding-bottom: 10px;
    text-align: center;
    width: 100%;
}

.flex-thumbnail.panel {
    border-bottom-width: 0;
}

.flex-row .panel.widget {
    margin-bottom: 0;
}

.subject_item {
    border: 1px solid #ddd;
    margin-bottom: 15px;
    border-radius: 3px;
}

.progress-bar-success {
    background-color: #1ebe73;
}

#subject-tasks-table .k-command-cell .k-button {
    min-width: 0;
}

.subject_item .widget-footer .badge {
    padding: 4px 8px;
}

.inner-tabs .nav-tabs {
    margin-bottom: 1.5em;
}

#event-form .row {
    margin-bottom: 1em;
}

#event-form .form-group {
    margin-bottom: 0;
}

.label-for-switch {
    margin-top: 10px;
}

.label-for-date {
    margin-top: 5px;
}

.footer-info {
    margin-top: 7.5px;
    max-width: 80%;
    overflow: hidden;
    float: left;
    text-align: left;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}

.popover {
    max-width: 500px !important;
}

.censored-text {
    color: #666666;
    background-color: #666666;
}

.inner-tabs .tab-content {
    box-shadow: none;
    padding: 0 15px;
}

blockquote {
    font-size: inherit;
}

blockquote p {
    margin-bottom: 0.25em;
}

h3.module-title, h3.modal-title, .content-webinars h3, #webinar-list h3 {
    font-size: 1.2em;
}

.bq-sm h3 {
    color: #000;
    font-weight: 700;
    font-size: 13px
}

legend.control-label {
    font-size: 13px;
    font-weight: 600;
    border: 0;
    margin: 0;
    padding-bottom: 0;
}

.dropdown-submenu {
    position: relative;
}

.dropdown-submenu .caret {
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
    position: relative;
    float: right;
    top: 0.5em;
}

.dropdown-submenu > .dropdown-menu {
    top: 0;
    left: 100%;
    margin-top: -6px;
    margin-left: -1px;
}

.dropdown-submenu.open > a:after {
    border-left-color: #fff;
}

.dropdown-submenu.open > .dropdown-menu, .dropdown-submenu.open > .dropdown-menu {
    display: block;
}

.dropdown-submenu .dropdown-menu {
    margin-bottom: 8px;
}

@media screen and (min-width: 992px) {
    .dropdown-submenu .dropdown-menu {
        margin-bottom: 2px;
    }
}

.btn-group .report_menu {
    width: 140px;
}

.submit-report-button {
    width: 140px;
}

.btn-default .report_menu {
    width: 120px;
}

#att-reports-table .dropdown-menu a.btn {
    text-align: left;
}

.dropdown-menu .btn.report_menu {
    text-align: left;
}

#att-reports-table .canceled {
    text-decoration: line-through;
}

.badge-tag {
    display: inline-flex;
    height: 19px;
    align-items: center;
    border: 1px solid #ccc;
    border-radius: 5px;
    background-color: #F9F9F9;
    padding: 0px 6px 0px 0;
    margin: 0 1px 1px 0;
    vertical-align: middle;
    font-size: 0.9em;
}

.tag-accent {
    display: inline-block;
    width: 12px;
    height: 12px;
    background-color: transparent;
    margin-right: 0;
    margin-left: 4px;
    border-radius: 999px;
    border: 1px solid #666;
    vertical-align: middle;
}

.tag-label {
    padding-right: 0px;
    padding-left: 5px;
    white-space: nowrap;
    vertical-align: middle;
    color: #000 !important;
}

.tag-close {
    background: none;
    border: none;
    font-size: 16px;
    cursor: pointer;
    color: #555;
    padding: 1px 0 0 4px;
    vertical-align: middle;
}

.tag-link {
    color: #000 !important;
}

.tag-close:hover {
    color: #000;
}

.industry-pill-list {
    display: flex;
    flex-wrap: wrap;
    gap: 3px;
}

.industry-pill {
    padding-right: 6px;
}

.industry-pill-icon {
    margin-left: 5px;
    font-size: 12px;
    line-height: 1;
}

.select2_tag_color {
    display: inline-block;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    position: relative;
    top: 1px;
    background-color: transparent;
    margin-right: 6px;
    border: 1px solid #666;
}

.select2_selected_tag_color {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    position: relative;
    top: -1px;
    background-color: transparent;
    margin-right: 4px;
    vertical-align: middle;
    border: 1px solid #666;
}

.nace_childlink {
    font-size: 110%;
    color: #000 !important;
}

.industry_categorylink {
    font-size: 110%;
    font-weight: bold;
    color: #000 !important;
}

span.nace_grandchildren_links {
    font-size: 95%;
}

.widget-rating {
    text-align: center;
    padding-bottom: 5px;
}

.item_rating {
    position: relative;
    top: -2px;
    margin-bottom: 5px;
}

.item_rating .star_item {
    padding: 0 2px;
    font-size: 110%;
    color: #ffffff;
}

.item_rating .star_item:hover {
    color: #FFC107;
}

.feedback-buttons-area {
    width: 100%;
    height: 30px;
    border: 0;
    margin-top: 12px;
    text-align: center;
}

.feedback-buttons-area .btn {
    padding-top: 5px;
}

.feedback-comment-area {
    width: 100%;
    height: 3.3em;
    border: 0;
    text-align: center;
}

.feedback-comment-area textarea::placeholder {
    color: #999;
}

.tag-new {
    padding-left: 5px;
    /* background-color: #bbffbb !important; */
    padding-top: 2px;
}

/* InfoWindow */
#company-map .mu-iw {
    display: none;
    position: absolute;
    transform: translate(-50%, calc(-100% - 11px));
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 12px rgba(0, 0, 0, .25);
    padding: 12px 14px 10px;
    max-width: 280px;
    font: 14px/1.35 "Helvetica Neue", Arial, sans-serif;
}

#company-map .mu-iw::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -10px;
    transform: translateX(-50%);
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid #fff;
    filter: drop-shadow(0 2px 2px rgba(0, 0, 0, .15));
}

#company-map .mu-iw .mu-title {
    font-weight: 700;
    margin: 0 28px 4px 0
}

#company-map .mu-iw .mu-line {
    color: #5f6368
}

#company-map .mu-iw .mu-actions {
    margin-top: 8px;
    display: flex;
    gap: 6px;
    flex-wrap: wrap
}

#company-map .mu-iw .mu-btn {
    appearance: none;
    border: 1px solid #dadce0;
    background: #fff;
    color: #1a73e8;
    padding: 4px 8px;
    border-radius: 6px;
    font-size: 12px;
    cursor: pointer;
}

#company-map .mu-iw .mu-btn:hover {
    background: #f1f3f4
}

#company-map .mu-iw .mu-close {
    position: absolute;
    top: 6px;
    right: 6px;
    width: 22px;
    height: 22px;
    border: 0;
    border-radius: 50%;
    background: transparent;
    cursor: pointer;
    line-height: 22px;
    text-align: center;
    font-size: 18px;
    color: #5f6368;
}

#company-map .mu-iw .mu-close:hover {
    background: rgba(0, 0, 0, .06)
}

/* Tooltip */
#company-map .mu-tip {
    position: absolute;
    transform: translate(-50%, -120%);
    background: #202124;
    color: #fff;
    padding: 4px 6px;
    border-radius: 4px;
    font-size: 12px;
    white-space: nowrap;
    pointer-events: none;
    box-shadow: 0 1px 6px rgba(0, 0, 0, .25);
    display: none;
}

#company-map .mu-tip::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -6px;
    transform: translateX(-50%);
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid #202124;
}

/* Legend */
.map-legend {
    background: #fff;
    padding: 8px 10px;
    margin: 10px;
    border-radius: 6px;
    font-size: 13px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, .3)
}

.map-legend .legend-title {
    font-weight: 700;
    margin-bottom: 6px
}

.map-legend .legend-item {
    display: flex;
    align-items: center;
    margin: 4px 0
}

.map-legend .legend-item input {
    margin-right: 6px
}

.map-legend .swatch {
    display: inline-block;
    width: 14px;
    height: 14px;
    margin-right: 4px;
    border: 1px solid #000
}

.map-heat-toggle{
    background:#fff; border:1px solid #dadce0; border-radius:6px;
    padding:6px 10px; margin:10px; cursor:pointer; font-size:13px;
    box-shadow:0 1px 4px rgba(0,0,0,.3);
}
.map-heat-toggle.active{ color:#1a73e8; border-color:#c7d2ff; }

/* Simple styling for the search box control */
.map-search{
    box-sizing: border-box;
    width: 260px;
    height: 34px;
    padding: 6px 10px;
    margin: 10px;
    border: 1px solid #c7d2e6;
    border-radius: 6px;
    background: #fff;
    outline: none;
    font-size: 13px;
    box-shadow: 0 1px 2px rgba(0,0,0,.08);
}
.map-search:focus{
    border-color: #6aa0ff;
    box-shadow: 0 0 0 3px rgba(59,130,246,.15);
}

.select2-results ul {
    padding-left: 0;
}

/* SMS Message Bubbles for global_admin */
#sms_list {
    max-height: 300px;
    overflow-y: auto;
    padding: 15px;
    background: #f9f9f9;
    border-radius: 4px;
    margin-bottom: 15px;
}

#sms_list:empty {
    display: none;
}

.sms-message-bubble {
    background: #fff;
    border-left: 4px solid #999;
    border-radius: 6px;
    padding: 10px 12px;
    margin-bottom: 10px;
    box-shadow: 0 1px 2px rgba(0,0,0,0.08);
}

.sms-message-bubble:last-child {
    margin-bottom: 0;
}

/* Status colors */
.sms-message-bubble[data-status="0"] {
    border-left-color: #999; /* Unprocessed - gray */
}

.sms-message-bubble[data-status="1"] {
    border-left-color: #f39c12; /* Not found - orange */
}

.sms-message-bubble[data-status="2"] {
    border-left-color: #27ae60; /* Processed/Found - green */
}

.sms-message-bubble[data-status="3"] {
    border-left-color: #e74c3c; /* Archived/Given up - red */
}

.sms-message-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 6px;
    padding-bottom: 4px;
    border-bottom: 1px solid #f0f0f0;
}

.sms-message-date {
    font-size: 11px;
    color: #7f8c8d;
    font-weight: 600;
}

.sms-message-status {
    font-size: 13px;
    color: #95a5a6;
}

.sms-message-text {
    font-size: 13px;
    line-height: 1.5;
    color: #2c3e50;
    white-space: pre-wrap;
    word-wrap: break-word;
}

/* Messages always visible - no collapse/expand */

/* Scrollbar styling */
#sms_list::-webkit-scrollbar {
    width: 8px;
}

#sms_list::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 4px;
}

#sms_list::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 4px;
}

#sms_list::-webkit-scrollbar-thumb:hover {
    background: #999;
}

/* SMS Inline Reply Field */
.sms-reply-container {
    background: #fff;
    border: 2px solid #e3e3e3;
    border-radius: 6px;
    padding: 12px;
    margin: 0 15px 15px 15px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

.sms-reply-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
    padding-bottom: 6px;
    border-bottom: 1px solid #f0f0f0;
}

.sms-reply-label {
    font-size: 12px;
    color: #7f8c8d;
    font-weight: 600;
    text-transform: uppercase;
}

.sms-reply-textarea {
    border: 1px solid #ddd;
    border-radius: 4px;
    resize: vertical;
    min-height: 60px;
    font-size: 13px;
    margin-bottom: 8px;
}

.sms-reply-textarea:focus {
    border-color: #27ae60;
    box-shadow: 0 0 0 2px rgba(39, 174, 96, 0.1);
}

.sms-reply-actions {
    text-align: right;
}

.sms-reply-actions .btn {
    padding: 6px 16px;
    font-size: 13px;
}

/* company registration page */

.company-result {
    padding: 4px 0;
}
.company-result .company-name {
    font-weight: 500;
    margin-bottom: 2px;
}
.company-result .company-details {
    color: #666;
    margin-bottom: 2px;
}
.company-result .company-address {
    color: #888;
}
.select2-results__group {
    font-weight: 700;
    color: #333;
    background-color: #f5f5f5;
    padding: 6px 12px;
    border-bottom: 1px solid #ddd;
}
/* Make details white when result is highlighted (selected) */
.select2-results__option--highlighted .company-details {
    color: #fff !important;
}
/* Modal search results styling */
.company-search-result {
    cursor: pointer;
    transition: background-color 0.2s;
}
.company-search-result:hover {
    background-color: #337ab7 !important;
    color: #fff !important;
}
.company-search-result:hover .company-details {
    color: #fff !important;
}
.company-search-result .company-result {
    padding: 4px 0;
}

/* PII Privacy Flags */
.pii-critical-flag {
    color: #d9534f;
}
.pii-warning-flag {
    color: #f0ad4e;
}
/* Position for messages (no dropdown menu) */
.pii-flag-message {
    float: right;
    position: relative;
    top: 2px;
    margin-right: 5px;
}
/* Position for activities (has dropdown menu) */
.pii-flag-activity {
    float: left;
    position: relative;
    top: 8px;
    margin-left: 5px;
}

/* Main search field - grouped dropdown (data/search.php + mu_footer.php) */
/* Category headers: full-width left-aligned bars. The sticky header on top
   (.k-group-header) carries the FIRST group's label - Kendo only renders
   inline .k-group labels from the second group onward - so it must stay
   visible and match the inline bars. */
#employee-search-field-list .k-group-header,
#employee-search-field-list .k-list .k-item > .k-group {
    position: static;
    display: block;
    float: none;
    width: auto;
    padding: 4px 10px;
    text-align: left;
    background: #eef1f4;
    color: #4a5561;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .05em;
    border-radius: 0;
}
/* Text-only results (no avatars); wrap instead of overflowing the popup.
   Uniform top/bottom padding keeps item heights tidy - the item template
   skips empty detail lines so heights are content-driven. */
#employee-search-field-list .k-list .k-item {
    white-space: normal;
    padding: 6px 10px;
}
/* Kendo renders the group label INSIDE the first item of each group,
   after its content - flex + order lifts it above the content so the
   header sits on top of its own group, full-bleed across the padding */
#employee-search-field-list .k-list .k-item.k-first {
    display: flex;
    flex-direction: column;
    padding-top: 0;
}
#employee-search-field-list .k-list .k-item > .k-group {
    order: -1;
    margin: 0 -10px 6px -10px;
}
/* Single-category result set: the category bar is redundant, so hide it.
   .single-category is toggled in dataBound (mu_footer.php). Restore the
   first item's top padding the .k-first flex rule removed for the header.
   !important because Kendo writes an inline style="display:..." on the
   sticky .k-group-header as it repositions it on databound/scroll - without
   it the header re-appears when narrowing a multi-category result to one. */
#employee-search-field-list.single-category .k-group-header,
#employee-search-field-list.single-category .k-list .k-item > .k-group {
    display: none !important;
}
#employee-search-field-list.single-category .k-list .k-item.k-first {
    padding-top: 6px;
}
#employee-search-field-list .k-item > span.mu-search-item {
    display: block;
    overflow: hidden;
    word-wrap: break-word;
    margin: 0;
}
/* Popup width: overrides the global ".k-list-container { width: 400px }"
   rule further up, which applies to all Kendo dropdowns */
#employee-search-field-list.k-list-container {
    width: 520px !important;
}
@media (max-width: 600px) {
    #employee-search-field-list.k-list-container {
        width: 94vw !important;
    }
}
/* Category chips (drill-down to one result type); wraps to more rows
   when the categories do not fit on one line */
#employee-search-field-list .mu-search-cats {
    padding: 6px 8px;
    background: #fafbfc;
    border-bottom: 1px solid #e3e6e8;
    white-space: normal;
}
#employee-search-field-list .mu-search-cat-chip {
    display: inline-block;
    margin: 2px 4px 2px 0;
    padding: 2px 10px;
    border-radius: 12px;
    background: #eceff1;
    color: #444;
    font-size: 12px;
    line-height: 18px;
    cursor: pointer;
    border: 1px solid transparent;
    white-space: nowrap;
}
#employee-search-field-list .mu-search-cat-chip:hover {
    background: #dfe4e8;
}
#employee-search-field-list .mu-search-cat-chip.active {
    background: #5688c7;
    color: #fff;
}
#employee-search-field-list .mu-search-cat-chip .count {
    margin-left: 5px;
    opacity: .75;
    font-size: 11px;
}

/* --- merket i menyen ----------------------------------------------------
 * Rødt fordi det betyr «du må gjøre noe», ikke «noe har skjedd». Tallet
 * står i sidemenyen, som tegnes på hver sidevisning, så det er det eneste
 * stedet en frist kan nå deltakeren uten at hun åpner jobbsiden.
 */
.mu-vac-navbadge {
    display: inline-block;
    min-width: 19px;
    margin-left: 7px;
    padding: 0 6px;
    font-size: 11px;
    font-weight: 700;
    line-height: 17px;
    text-align: center;
    color: #fff;
    background: #cc0000;
    border-radius: 9px;
}
