/* Login-pagina */
.navbar-brand {
    padding: 0px !important;
}

body {
    /* background: #f7e6c5;  LICHT GEEL */
    background: #bed6fc;
}

.menu-block

/* Menu items in vakjes */
    {
    width: 170px;
    height: 120px;
    margin-top: 42px;
    padding: 15px;
    text-align: center;
    transition: all ease-in-out 200ms;
    border-radius: 7px;
    border-color: #aaa;
}

.menu-block:hover

/* Menu items zitten in vakjes */
    {
    box-shadow: 0px 3px 24px -8px #333;
}

/* Voor Buiterij */
.menu-greenish {
    background-color: #dfd;
}
.menu-greenborder {
    background-color: #fff;
    border: #0f790f 5px solid;
}

/* Voor Buiterij */
.menu-reddish { 
    background-color: #fdd;
}
.menu-cbc { 
    background-color: rgb(236, 222, 177);
}
.menu-purpleborder {
    background-color: #fff;
    border: purple 5px solid;
}

.fa-main-menu {
    font-size: 3rem;
    color: #EA7411;
    margin-bottom: 21px;
    margin-top: 7px;
}

.menu-icon-dashboard {
    font-size: 40px;
    color: #333 !important;
    margin-top: 5px;
    margin-bottom: 8px;
    transition: all 0.4s;
}

.menu-text-dashboard {
    /*margin-bottom: 2px;*/
    color: #47340d;
    font-size: 15px;
    line-height: 20px;
}

.menu-text-dashboard:hover {
    color: #057983;
}

.footerText {
    width: 100%;
    text-align: center;
    color: #999;
    font-size: 11px;
}

h2 {
    font-weight: 200;
}

h2.h2-page-name {
    margin-top: 24px;
    font-weight: lighter;
}

p.heading2 {
    font-size: 17px;
    color: #444;
    min-height: 25px;
}

*:focus {
    outline: none;
}

.form-control {
    border-bottom: 2px solid #f1f1f1;
    border-top: none;
    border-left: none;
    border-right: none;
    border-radius: 0;
}

.form-control:focus {
    outline: 0;
    box-shadow: none !important;
}

.nav-fix {
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
    position: fixed;
    right: 0;
    left: 0;
    top: 0;
    z-index: 2;
    border-bottom: 1px solid #aaa;
}

.login-container {
    margin-top: 55px;
}

.login-card {
    max-width: 510px;
    margin: 90px auto;
    padding: 20px 10px 10px 10px;
    border: none;
}

.login-form-group {
    margin-top: 30px;
}

.login-form-control {
    font-size: 18px;
}

.login-h2 {
    text-align: center;
    font-weight: 300;
}

.login-label {
    font-size: 18px;
    margin-bottom: 5px;
    font-weight: 400;
}

.login-btn {
    /*    width: 100%;
        font-weight: bold;*/
    cursor: pointer;
    margin-top: 20px;
    margin-bottom: 30px;
}

.forgot-password {
    text-decoration: none;
}

.login-p {
    margin: 0px;
}

.login-alert {
    border: 1px solid #dd7;
    background: #ffffdd;
    color: #cc620b;
    margin-bottom: -20px;
    font-size: 18px;
    padding: .75rem .75rem;
    margin-top: 35px;
    margin-bottom: 20px;
}

.user-img-holder {
    width: 30px;
    height: 30px;
    background: red;
}

.user-nav {
    cursor: pointer;
}

.user-nav-icon {
    font-size: 25px;
    vertical-align: middle;
}

.user-nav-text {
    font-size: 14px;
}

.blurr {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.3);
    display: none;
    z-index: 1;
}

.corner {
    top: 65px;
    border: 1px #222 solid;
    z-index: 0;
    right: 20px;
    position: absolute;
    border-radius: 3px;
    background: #373737;
    width: 30px;
    height: 30px;
    transform: rotate(45deg);
}

.user-actions {
    position: absolute;
    top: 70px;
    right: 10px;
    background: #373737;
    padding: 10px 0px 0px 0px;
    border-radius: 5px;
}

.user-action {
    display: block;
    border-top: 1px solid #bbbbbb;
    margin: 0;
    border-radius: 0;
    background: #fefefe;
    padding: 10px;
    color: #333;
    min-width: 220px;
}

.user-action:last-child {
    /*border-bottom: 1px solid #bbbbbb;*/
    border-bottom-right-radius: 5px;
    border-bottom-left-radius: 5px;
}

.user-action:hover {
    background: #e3e3e3;
    text-decoration: none;
    color: #333;
}

.user-email {
    color: #fff;
    padding: 0px 10px 10px 10px;
    font-size: 16px;
    background: #373737;
}

.u-id {
    font-weight: lighter;
    font-size: 12px;
    padding-left: 10px;
    padding-bottom: 7px;
    margin-top: -7px;
    color: #ccc;
}

#user-menu {
    display: none;
    position: absolute;
    top: -75px;
    right: 0px;
}

.card-fix {
    box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.2);
    padding: 20px;
    border: 1px solid #aaa;
}

label.btn span {
    font-size: 1.5em;
    color: #212529;
}

.search-bar-table {
    float: right;
    padding: 5px 10px;
    border: 1px solid #999;
    border-radius: 7px;
    max-width: 300px;
    width: 60%;
}

label input[type="radio"]~i.fa.fa-circle-o {
    color: #444;
    display: inline;
}

label input[type="radio"]~i.fa.fa-dot-circle-o {
    display: none;
}

label input[type="radio"]:checked~i.fa.fa-circle-o {
    display: none;
}

label input[type="radio"]:checked~i.fa.fa-dot-circle-o {
    color: #444;
    display: inline;
}

label:hover input[type="radio"]~i.fa {
    color: #212529;
}

label input[type="checkbox"]~i.fa.fa-square-o {
    color: #444;
    display: inline;
}

label input[type="checkbox"]~i.fa.fa-check-square-o {
    display: none;
}

label input[type="checkbox"]:checked~i.fa.fa-square-o {
    display: none;
}

label input[type="checkbox"]:checked~i.fa.fa-check-square-o {
    color: #444;
    display: inline;
}

label:hover input[type="checkbox"]~i.fa {
    color: #444;
}

div[data-toggle="buttons"] label.active {
    color: #212529;
}

div[data-toggle="buttons"] label {
    display: inline-block;
    padding: 6px 12px;
    margin-bottom: 0;
    font-size: 14px;
    font-weight: normal;
    line-height: 2em;
    text-align: left;
    /*  */
    vertical-align: top;
    cursor: pointer;
    background-color: none;
    border: 0px solid #c8c8c8;
    border-radius: 3px;
    color: #c8c8c8;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -o-user-select: none;
    user-select: none;
}

div[data-toggle="buttons"] label:active,
div[data-toggle="buttons"] label.active {
    -webkit-box-shadow: none;
    box-shadow: none;
}

.fix-text-checkbox {
    position: absolute;
    left: 35px;
    top: 0;
    bottom: 0;
    right: 0;
    font-size: 16px !important;
    vertical-align: middle;
    line-height: 20px;
}

.fix-box-checkbox {
    margin: 0px !important;
    position: relative !important;
    display: block !important;
    padding-left: 0 !important;
}

.request-account-link {
    margin-left: 35px;
    margin-top: -5px;
    display: block;
    text-decoration: none;
}

.nav-block {
    padding: 20px;
    background: #fff;
    border: 1px solid #aaa;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
    border-radius: 5px;
}

.btn-add-flow {
    background: #fff;
    border: 1px solid #aaa;
    padding: 10px;
    width: 50px;
    height: 50px;
    border-radius: 25px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
    float: right;
    transition: all 0.5s ease;
}

.btn-add-flow:hover {
    border: 1px solid #999;
    box-shadow: 0 2px 15px rgba(0, 0, 0, 0.4);
}

.icon-add-flow-fix {
    display: block;
    margin: 5px auto;
    width: 14px;
    height: 14px;
}


/* START BUTTONS Flow status  */

/* Flow status button algemeen ... */
/*.btn_flow_status 
{
    float: right;
    padding: 4px 15px;
    border-bottom: 1rem;
    text-align: center;
    border-radius: 5px;
    transition: all 0.5s ease;
    border-bottom: 14px;  algemene afstand buttons (Overview en status) en de naam van de flow 
}

.btn_flow_active   Groene status - Is knop met hover 
{
    background-color: #85e085;
    border-radius: 7px;
    border: 1px solid #1f7a1f;
}
.btn_flow_active:hover 
{
    background-color: #befabe;
    color: #333;
    cursor: pointer;
}

.btn_flow_inactive   Rode status - Is knop met hover 
{
    background-color: #f55;
    color: #fff;
    border: 1px solid #a55;
}
.btn_flow_inactive:hover 
{
    background-color: #f88;
    color: #fff;
    cursor: pointer;
}

.btn_flow_in_progress   Oranje status - Is geen knop 
{
    background-color: #ee8822;
    color: #fff;
    border: 1px solid #b35900;
}*/

/* END BUTTONS Flow status  */


/* START Knoppen bovenaan Flow Edit */
.btn-return {
    text-align: center;
    float: left;
    padding: 4px 15px;
    border-radius: 5px;
    background-color: #eee;
    border: 1px solid #c0c0c0;
    color: #555;
    transition: background 0.5s ease;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.btn-round {
    float: right;
    border-radius: 50%;
    width: 42px;
    height: 42px;
    padding: 6px;
    font-size: 17px;
    color: #fff;
    background-color: #C89F40;
    border: 1px solid #C89F40 !important;
}

.btn-add-new-content {
    margin: 5px;
}

.btn-return a,
a:hover,
a:active {
    color: #555;
    text-decoration: none;
}

.btn-return:hover {
    background-color: #e3e3e3;
    border: 1px solid #aaa;
    color: #333;
}

.btn-status {
    float: right;
}

.btn-status-non-clickable {
    cursor: default;
}

.btn-status-non-clickable:hover {
    background-color: #eee;
    border: 1px solid #c0c0c0;
    color: #555;
}

/* EINDE Knoppen bovenaan Flow Edit */


.btn-overview-back {
    vertical-align: middle;
    line-height: 35px;
    font-size: 18px;
}

/* Contractbeheer */
.contract-page {
    padding-bottom: 48px;
}

.contract-page.container {
    width: calc(100% - 40px);
    max-width: 1480px;
}

.contract-page-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin: 28px 0 22px;
    padding: 28px 32px;
    color: #fff;
    background: linear-gradient(135deg, #24364b 0%, #365a77 100%);
    border-radius: 14px;
    box-shadow: 0 12px 30px rgba(27, 49, 68, .16);
}

.contract-page-header h1 {
    margin: 3px 0 5px;
    font-size: 30px;
    font-weight: 650;
    letter-spacing: -.35px;
}

.contract-page-header p {
    margin: 0;
    color: rgba(255, 255, 255, .76);
}

.contract-eyebrow {
    color: #b9d7ea;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.4px;
    text-transform: uppercase;
}

.contract-page-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 9px;
}

.contract-action {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 40px;
    padding: 9px 15px;
    color: #24364b;
    background: #fff;
    border: 1px solid rgba(255, 255, 255, .4);
    border-radius: 8px;
    font-weight: 600;
    line-height: 1;
    box-shadow: 0 3px 10px rgba(0, 0, 0, .08);
}

.contract-action:hover {
    color: #172838;
    text-decoration: none;
    background: #f3f8fb;
}

.contract-action-primary {
    color: #fff;
    background: #cf7b1b;
    border-color: #cf7b1b;
}

.contract-action-primary:hover {
    color: #fff;
    background: #b96910;
}

.contract-panel {
    margin-bottom: 22px;
    background: #fff;
    border: 1px solid #dfe6eb;
    border-radius: 12px;
    box-shadow: 0 7px 22px rgba(37, 55, 70, .07);
    overflow: hidden;
}

.contract-panel-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 22px;
    background: #f7f9fb;
    border-bottom: 1px solid #e4e9ed;
}

.contract-panel-heading h2,
.contract-panel-heading h3 {
    margin: 0;
    color: #24364b;
    font-size: 18px;
    font-weight: 650;
}

.contract-panel-heading p {
    margin: 3px 0 0;
    color: #74818b;
    font-size: 13px;
}

.contract-panel-body {
    padding: 24px;
}

.contract-form-section + .contract-form-section {
    margin-top: 28px;
    padding-top: 25px;
    border-top: 1px solid #e7ecef;
}

.contract-section-title {
    margin: 0 0 17px;
    color: #365a77;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .35px;
    text-transform: uppercase;
}

.contract-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 22px;
}

.contract-field-wide {
    grid-column: 1 / -1;
}

.contract-field label {
    display: block;
    margin-bottom: 7px;
    color: #344653;
    font-size: 13px;
    font-weight: 650;
}

.contract-field .form-control {
    min-height: 44px;
    color: #263844;
    background: #fbfcfd;
    border: 1px solid #cdd7de;
    border-radius: 7px;
    box-shadow: none;
}

.contract-field .form-control:focus {
    background: #fff;
    border-color: #4d83a8;
    box-shadow: 0 0 0 3px rgba(77, 131, 168, .14);
}

.contract-field textarea.form-control {
    min-height: 110px;
    resize: vertical;
}

.contract-money-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(240px, 1fr);
    gap: 22px;
    align-items: end;
}

.contract-vat-total {
    min-height: 44px;
    padding: 11px 14px;
    color: #31566f;
    background: #eef5f9;
    border: 1px solid #d5e4ed;
    border-radius: 7px;
    font-size: 14px;
}

.contract-vat-total strong {
    float: right;
    color: #1f4055;
    font-size: 16px;
}

.contract-active-control {
    display: flex;
    align-items: center;
    min-height: 44px;
    padding: 10px 13px;
    background: #fbfcfd;
    border: 1px solid #cdd7de;
    border-radius: 7px;
}

.contract-active-control input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin-right: 9px;
}

.contract-active-control label {
    margin: 0;
    font-weight: 500;
}

.contract-form-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 28px;
    padding-top: 20px;
    border-top: 1px solid #e7ecef;
}

.contract-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap;
}

.contract-toolbar-controls {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
}

.contract-jump-row {
    display: flex;
    justify-content: flex-end;
    margin: -10px 2px 14px;
}

.contract-jump-button {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 11px;
    color: #5d6f7a;
    background: rgba(255, 255, 255, .72);
    border: 1px solid #d6e0e5;
    border-radius: 7px;
    font-size: 12px;
    font-weight: 650;
}

.contract-jump-button:hover {
    color: #2f526a;
    text-decoration: none;
    background: #fff;
}

.contract-scroll-top {
    position: fixed;
    right: 22px;
    bottom: 24px;
    z-index: 1200;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 11px 15px;
    color: #fff;
    background: #2e4f64;
    border: 0;
    border-radius: 9px;
    box-shadow: 0 10px 25px rgba(24, 48, 64, .24);
    opacity: 0;
    pointer-events: none;
    transform: translateX(calc(100% + 30px));
    transition: transform .22s ease, opacity .22s ease;
}

.contract-scroll-top.is-visible {
    opacity: 1;
    pointer-events: auto;
    transform: translateX(0);
}

.contract-scroll-top:hover {
    background: #203f53;
}

.contract-scroll-top-stats {
    background: #24543e;
}

.contract-status-filters {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #465966;
    font-weight: 600;
}

.contract-table-wrap {
    padding: 0 22px 22px;
    overflow-x: auto;
}

.contract-table-wrap #contracttabel {
    min-width: 1120px;
}

.contract-page #contracttabel_wrapper {
    padding-top: 20px;
}

.contract-page #contracttabel_filter label,
.contract-page #contracttabel_length label {
    color: #52636f;
    font-weight: 600;
}

.contract-page #contracttabel_filter input,
.contract-page #contracttabel_length select {
    min-height: 38px;
    margin-left: 8px;
    padding: 7px 10px;
    background: #fff;
    border: 1px solid #cbd6dd;
    border-radius: 7px;
}

.contract-page table.dataTable thead th {
    color: #fff;
    background: #365a77;
    border-bottom: 0;
}

.contract-page table.dataTable tbody td {
    padding-top: 11px;
    padding-bottom: 11px;
    border-color: #e6ebee;
}

.contract-page table.dataTable tbody tr:hover td {
    background: #f0f6fa;
}

.contract-summary-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.contract-summary-card {
    padding: 18px;
    background: #fff;
    border: 1px solid #dfe6eb;
    border-radius: 10px;
}

.contract-summary-card span {
    display: block;
    margin-bottom: 7px;
    color: #74818b;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .4px;
    text-transform: uppercase;
}

.contract-summary-card strong {
    display: block;
    color: #24364b;
    font-size: 23px;
    font-weight: 650;
}

.contract-summary-card small {
    color: #7b8992;
}

.contract-summary-card.contract-summary-result {
    background: #edf7f1;
    border-color: #cfe6d8;
}

.contract-summary-card.contract-summary-result strong {
    color: #237044;
}

.contract-tabs {
    display: inline-flex;
    gap: 4px;
    padding: 4px;
    background: #e9eef2;
    border-radius: 9px;
}

.contract-tab {
    padding: 8px 14px;
    color: #5b6c78;
    background: transparent;
    border: 0;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 650;
    cursor: pointer;
}

.contract-tab:hover {
    color: #29495f;
    text-decoration: none;
}

.contract-tab.is-active {
    color: #fff;
    background: #365a77;
    box-shadow: 0 2px 6px rgba(31, 63, 84, .18);
}

.contract-overview-table {
    width: 100%;
    min-width: 1050px;
    margin: 0;
}

.contract-overview-table thead th {
    padding: 12px 14px;
    color: #fff;
    background: #365a77;
    border: 0;
    font-size: 13px;
    white-space: nowrap;
}

.contract-overview-table tbody td {
    padding: 13px 14px;
    color: #314450;
    border-top: 1px solid #e4eaee;
    vertical-align: middle;
}

.contract-overview-table tbody tr:hover td {
    background: #f1f6f9;
}

.contract-overview-table tbody tr[data-href] {
    cursor: pointer;
}

.contract-overview-table tbody tr[data-href]:focus {
    outline: 3px solid rgba(77, 131, 168, .24);
    outline-offset: -3px;
}

.contract-name-primary {
    display: block;
    color: #24364b;
    font-weight: 650;
}

.contract-name-secondary {
    color: #788690;
    font-size: 12px;
}

.contract-overview-table .contract-edit-button,
.management-table .contract-edit-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    margin-right: 6px;
    color: #365a77;
    background: #fff;
    border: 1px solid #d5e0e7;
    border-radius: 7px;
}

.contract-overview-table .contract-edit-button:hover,
.management-table .contract-edit-button:hover {
    color: #fff;
    text-decoration: none;
    background: #365a77;
    border-color: #365a77;
}

.contract-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 9px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    white-space: nowrap;
}

.contract-badge-success {
    color: #22663d;
    background: #e3f4e9;
}

.contract-badge-warning {
    color: #845714;
    background: #fff1d4;
}

.contract-badge-muted {
    color: #667680;
    background: #e9eef1;
}

.contract-badge-danger {
    color: #8c3333;
    background: #f9e5e5;
}

.contract-hover-info {
    position: relative;
    display: inline-flex;
    align-items: center;
    border-bottom: 1px dashed #7891a1;
    cursor: help;
}

.contract-hover-card {
    position: absolute;
    left: 50%;
    top: calc(100% + 10px);
    z-index: 1100;
    width: 300px;
    padding: 14px 16px;
    color: #eaf1f5;
    background: #243b4c;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 9px;
    box-shadow: 0 12px 30px rgba(18, 37, 51, .26);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translate(-50%, 4px);
    transition: opacity .16s ease, transform .16s ease, visibility .16s;
}

.contract-hover-card::after {
    content: '';
    position: absolute;
    bottom: 100%;
    left: 50%;
    border: 7px solid transparent;
    border-bottom-color: #243b4c;
    transform: translateX(-50%);
}

.contract-hover-info:hover .contract-hover-card,
.contract-hover-info:focus .contract-hover-card,
.contract-hover-info:focus-within .contract-hover-card {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, 0);
}

.contract-hover-card strong {
    display: block;
    margin-bottom: 9px;
    color: #fff;
    font-size: 13px;
}

.contract-hover-row {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    padding: 4px 0;
    font-size: 12px;
    border-top: 1px solid rgba(255, 255, 255, .1);
}

.contract-hover-row span:last-child {
    color: #fff;
    font-weight: 650;
    text-align: right;
}

.contract-hover-card-note {
    right: 0;
    left: auto;
    width: 330px;
    white-space: pre-wrap;
    transform: translateY(4px);
}

.contract-hover-card-note::after {
    right: 24px;
    left: auto;
    transform: none;
}

.contract-overview-table tbody tr:last-child .contract-hover-card,
.contract-overview-table tbody tr:nth-last-child(2) .contract-hover-card {
    top: auto;
    bottom: calc(100% + 10px);
}

.contract-overview-table tbody tr:last-child .contract-hover-card::after,
.contract-overview-table tbody tr:nth-last-child(2) .contract-hover-card::after {
    top: 100%;
    bottom: auto;
    border-top-color: #243b4c;
    border-bottom-color: transparent;
}

.contract-hover-info:hover .contract-hover-card-note,
.contract-hover-info:focus .contract-hover-card-note,
.contract-hover-info:focus-within .contract-hover-card-note {
    transform: translateY(0);
}

@media (min-width: 1200px) {
    .contract-overview-panel,
    .contract-overview-panel .contract-table-wrap {
        overflow: visible;
    }
}

.contract-forecast-table {
    width: 100%;
    border-collapse: collapse;
}

.contract-forecast-table th,
.contract-forecast-table td {
    padding: 12px 14px;
    border-bottom: 1px solid #e5ebef;
    text-align: right;
}

.contract-forecast-table th:first-child,
.contract-forecast-table td:first-child {
    text-align: left;
}

.contract-forecast-table thead th {
    color: #63737e;
    background: #f7f9fb;
    font-size: 12px;
    letter-spacing: .35px;
    text-transform: uppercase;
}

.contract-info-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1px;
    background: #dfe6eb;
    border: 1px solid #dfe6eb;
    border-radius: 9px;
    overflow: hidden;
}

.contract-info-item {
    min-height: 92px;
    padding: 16px;
    background: #fff;
}

.contract-info-item span {
    display: block;
    margin-bottom: 6px;
    color: #7a8993;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .45px;
    text-transform: uppercase;
}

.contract-info-item strong {
    color: #293d4a;
    font-size: 15px;
    font-weight: 650;
    overflow-wrap: anywhere;
}

.contract-status-banner {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 20px;
    padding: 14px 16px;
    border-radius: 9px;
}

.contract-status-banner i {
    margin-top: 2px;
    font-size: 18px;
}

.contract-status-banner strong {
    display: block;
}

.contract-status-banner p {
    margin: 2px 0 0;
    font-size: 13px;
}

.contract-status-ready {
    color: #225e3b;
    background: #e8f6ed;
    border: 1px solid #cde8d6;
}

.contract-status-readonly {
    color: #516673;
    background: #eef3f6;
    border: 1px solid #d8e2e8;
}

.contract-readonly-note {
    min-height: 90px;
    padding: 14px;
    color: #3c4e59;
    white-space: pre-wrap;
    background: #f8fafb;
    border: 1px solid #d9e2e7;
    border-radius: 7px;
}

.contract-copy-field,
.contract-copy-inline {
    display: flex;
    align-items: center;
    gap: 8px;
}

.contract-copy-field .form-control {
    flex: 1 1 auto;
}

.contract-copy-button {
    display: inline-flex;
    flex: 0 0 40px;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    padding: 0;
    color: #365a77;
    background: #fff;
    border: 1px solid #cdd9e0;
    border-radius: 7px;
    cursor: pointer;
    transition: color .15s ease, background .15s ease, border-color .15s ease;
}

.contract-copy-button:hover {
    color: #fff;
    background: #365a77;
    border-color: #365a77;
}

.contract-copy-button.is-copied {
    color: #fff;
    background: #2f9a59;
    border-color: #2f9a59;
}

.contract-copy-check {
    color: #fff;
    font-size: 21px;
    font-weight: 800;
    line-height: 1;
}

.contract-copy-button:disabled {
    color: #9aa7af;
    background: #f1f4f6;
    cursor: not-allowed;
}

.contract-overview-table .contract-copy-button {
    width: 32px;
    height: 32px;
    flex-basis: 32px;
}

.contract-overview-search {
    min-width: 270px;
    min-height: 40px;
    padding: 8px 12px;
    color: #30434f;
    background: #fff;
    border: 1px solid #cbd7de;
    border-radius: 7px;
}

.contract-overview-search:focus {
    border-color: #4d83a8;
    box-shadow: 0 0 0 3px rgba(77, 131, 168, .14);
    outline: none;
}

/* Factureren heeft bewust een warmere identiteit dan Beheren. */
.contract-page-invoicing .contract-page-header {
    background: linear-gradient(135deg, #684a38 0%, #9a673d 100%);
    box-shadow: 0 12px 30px rgba(92, 57, 34, .18);
}

.contract-page-invoicing .contract-eyebrow {
    color: #f0d2b3;
}

.contract-page-invoicing .contract-action-primary,
.contract-page-invoicing .contract-tab.is-active,
.contract-page-invoicing .contract-overview-table thead th {
    background: #9a673d;
    border-color: #9a673d;
}

.contract-page-invoicing .contract-panel-heading h2,
.contract-page-invoicing .contract-panel-heading h3,
.contract-page-invoicing .contract-section-title {
    color: #684a38;
}

.contract-page-invoicing .contract-overview-table tbody tr:hover td {
    background: #fbf4ed;
}

.contract-page-invoicing .contract-edit-button:hover,
.contract-page-invoicing .contract-copy-button:not(.is-copied):hover {
    background: #9a673d;
    border-color: #9a673d;
}

/* Managementinformatie / stats */
.contract-page-stats .contract-page-header {
    background: linear-gradient(135deg, #173d30 0%, #286348 100%);
    box-shadow: 0 12px 30px rgba(17, 61, 43, .2);
}

.contract-page-stats .contract-eyebrow {
    color: #aed9c4;
}

.contract-page-stats .contract-action-primary,
.contract-page-stats .contract-tab.is-active {
    background: #2b7653;
    border-color: #2b7653;
}

.management-tabs {
    display: flex;
    gap: 6px;
    margin-bottom: 18px;
    padding: 5px;
    overflow-x: auto;
    background: #e7efeb;
    border-radius: 10px;
}

.management-tab {
    flex: 0 0 auto;
    padding: 10px 15px;
    color: #4e675b;
    background: transparent;
    border: 0;
    border-radius: 7px;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
}

.management-tab.is-active {
    color: #fff;
    background: #24543e;
    box-shadow: 0 3px 8px rgba(25, 70, 50, .18);
}

.management-tab-panel {
    display: none;
}

.management-tab-panel.is-active {
    display: block;
}

.management-chart-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.management-chart {
    min-height: 380px;
    background: #fff;
    border: 1px solid #dfe7e2;
    border-radius: 10px;
}

.management-table {
    width: 100%;
    border-collapse: collapse;
}

.management-table th,
.management-table td {
    padding: 11px 13px;
    border-bottom: 1px solid #e3eae6;
    text-align: left;
}

.management-table th {
    color: #fff;
    background: #24543e;
    font-size: 12px;
    letter-spacing: .3px;
    text-transform: uppercase;
}

.management-table td.is-money,
.management-table th.is-money {
    text-align: right;
}

.management-table tbody tr:hover td {
    background: #f1f7f4;
}

.management-limit-controls {
    display: inline-flex;
    gap: 4px;
    padding: 3px;
    background: #edf2ef;
    border-radius: 7px;
}

.management-limit-button {
    padding: 6px 10px;
    color: #5b6f65;
    background: transparent;
    border: 0;
    border-radius: 5px;
    font-size: 12px;
    font-weight: 700;
}

.management-limit-button.is-active {
    color: #fff;
    background: #397358;
}

.management-insight {
    padding: 16px 18px;
    color: #395247;
    background: #edf6f1;
    border-left: 4px solid #397358;
    border-radius: 0 8px 8px 0;
}

.management-insight strong {
    color: #214534;
}

@media (max-width: 991px) {
    .management-chart-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 991px) {
    .contract-page-header {
        align-items: flex-start;
        flex-direction: column;
    }
    .contract-page-actions {
        justify-content: flex-start;
    }
    .contract-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .contract-info-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .contract-page-header,
    .contract-panel-body {
        padding: 20px;
    }
    .contract-form-grid,
    .contract-money-row,
    .contract-summary-grid {
        grid-template-columns: 1fr;
    }
    .contract-field-wide {
        grid-column: auto;
    }
    .contract-page.container {
        width: calc(100% - 24px);
    }
    .contract-info-grid {
        grid-template-columns: 1fr;
    }
}

.form-group-fix {
    margin-bottom: 5px;
}

.form-group-fix label {
    font-weight: bold;
}

.card-edit-fix {
    padding: 12px 21px;
    border: 1px solid #999;
    border-radius: 7px;
}

#keyword-container {
    margin-top: 20px;
}

.keywordsPredict-container {
    display: none;
    top: 38px;
    left: 15px;
    right: 15px;
    position: absolute;
    background: #fff;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    border-bottom: 1px solid #aaa;
    border-left: 1px solid #aaa;
    border-right: 1px solid #aaa;
    z-index: 2;
}

.keyword-list-item:last-child {
    border: none !important;
}

.keyword-list-item {
    padding: 10px;
    border-bottom: 1px solid #aaa;
    cursor: pointer;
}

.keyword-list-item:hover {
    background: #98959529;
}

.keyword-btn-add {
    width: 100%;
    border: 1px solid #aaa;
    border-radius: 5px;
    bottom: 30px;
    font-size: 15px;
    background-color: #f7f7f7;
    padding: 5px;
    transition: all 0.5s ease;
    color: #333;
}

.keyword-btn-add:hover {
    border: 1px solid #aaa;
    background-color: #e7e7e7;
}

.label-fix {
    font-weight: bold;
}

.tag {
    margin-bottom: 8px;
    margin-right: 12px;
    display: flex;
}

#tag-container {
    padding: 0px 15px 10px 15px;
    min-height: 42px;
}

.tag-txt {
    background: #f3f3f3;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
    text-align: center;
    line-height: 20px;
    padding: 3px 7px;
    border: 1px solid #999;
    /*    border-right-color: #ccc;*/
    font-size: 14px;
    color: #444;
    float: right;
}

.tag-btn {
    background: #ddd;
    transition: background-color 0.5s ease;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    cursor: pointer;
    text-align: center;
    line-height: 14px;
    padding: 5px 5px;
    border: 1px solid #999;
    border-left: none;
    color: #888;
}

.tag-btn:hover {
    background: #999;
    color: #eee;
}


#answer-container {
    margin-top: 20px;
}

.label-width-fix {
    width: 100%;
}

.charLength {
    float: right;
    display: block;
    font-weight: normal;
    font-size: 14px;
    color: #999;
}

.user-menu-container {
    left: 0;
    right: 0;
    position: fixed;
    z-index: 2;
}

.answer-container-content div.card-edit-fix,
.container-exit-content div.card-edit-fix {
    border-radius: 1px;
    margin-bottom: 3px;
    border-bottom: 1px solid #b7b7b7;
    border-top: 1px solid #b7b7b7;
}

.answer-container-content div.card-edit-fix:first-child,
.container-exit-content div.card-edit-fix:first-child {
    border-top-left-radius: 7px;
    border-top-right-radius: 7px;
    border-bottom: 1px solid #b7b7b7;
    border-top: 1px solid #999;
    /*margin-top: 20px;*/
}

.card-edit-last {
    border-top: 1px solid #bbb;
    border-top-left-radius: 1px;
    border-top-right-radius: 1px;
    margin-bottom: 40px;
}

.container-fix {
    margin-bottom: 40px !important;
}

::placeholder {
    /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #ccc !important;
    opacity: 1;
    /* Firefox */
}

:-ms-input-placeholder {
    /* Internet Explorer 10-11 */
    color: #ccc !important;
}

::-ms-input-placeholder {
    /* Microsoft Edge */
    color: #ccc !important;
}

.right {
    position: relative;
}

.status-fix {
    position: absolute;
    right: 0;
}

.page-fix {
    margin-top: 100px;
}

.btn-icon {
    margin: 10px auto;
    font-size: 60px;
}

.label-add {
    padding-right: 5px;
    margin-bottom: 0px;
    padding-left: 5px;
    line-height: 14px;
    float: left;
}

textarea.form-control {
    height: auto !important;
}

.btn-remove-content {
    width: fit-content;
    float: right;
    margin-right: 10px;
    margin-bottom: -4px;
    padding: 5px 20px;
    margin-top: 10px;
}

button:focus {
    outline: none !important;
}

#content-add {
    /*    margin-top: -30px;
        margin-bottom: 25px;*/
}

.modal-header {
    background-color: #f8f9fa !important;
    border-bottom: 1px solid #aaa;
}

.modal-footer {
    display: block !important;
    border-top: none;
}

.modal-content {
    border: 2px solid #aaa;
}

.modal-footer {
    padding-bottom: 20px;
}

.float-left-btn {
    float: left !important;
}

.margin-right-fix {
    margin-right: 0px !important;
}

.content-add-holder {
    min-height: 46px;
    margin-bottom: 40px;
    margin-top: -20px;
}

.fix-top-card {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    margin-bottom: 4px;
}

.fix-mid-card {
    border-top-right-radius: 0;
    border-top-left-radius: 0;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    margin-bottom: 4px;
}

.fix-for-col {
    margin-bottom: 15px;
}

.fix-row-bottom {
    margin-bottom: -15px;
}

.option-label {
    border-radius: 50%;
    height: 30px;
    width: 30px;
    text-align: center;
    padding: 2px;
    line-height: 23px;
    color: #fff;
    /*    border: 1px solid #500;
        background: red;*/
}

.bold {
    font-weight: bold;
}

/* Questions and options */
.option-button {
    /*    background: red;
        border: 1px solid #500;*/
    height: 30px;
    width: 50px;
    border-radius: 10px;
    text-align: center;
    line-height: 27px;
    color: #fff;
    padding-left: 15px;
    padding-right: 15px;
    margin: 4px;
    font-weight: bold;
}

.option-nav {
    z-index: 1;
    position: absolute;
}

.option-nav-holder {
    display: flex;
}

.option-nav-border {
    position: relative;
    height: 40px;
    width: 60px;
    z-index: 1;
    background: #e3eef7;
    border: 1px solid #999;
    border-radius: 15px;
    margin-top: -19px;
    margin-left: 11px;
    margin-bottom: -14px;
}

.option-bg-fix {
    background: #e3eef7;
    position: absolute;
    left: -2px;
    right: -2px;
    height: 11px;
    top: 14px;
    bottom: 0;
    z-index: 1;
}

.options-holder-choise {
    display: flex;
}

.options-holder-choise-btn {
    text-align: center;
    margin: 10px 0px;
    border-radius: 10px;
    padding: 10px;
    background-color: #eee;
    border: 1px solid #c0c0c0;
}

.choise-action {
    margin-top: 20px;
    font-weight: bold;
}

.choice-color_1,
.choice-color_2,
.choice-color_3,
.choice-color_4 {
    transition: all 0.5s ease;
}

.choice-color_1 {
    background-color: #C41A7A;
    border: 1px solid #94004A;
}

.choice-color_2 {
    background-color: #619D21;
    border: #316D00 1px solid;
}

.choice-color_3 {
    background-color: #EA7411;
    border: #BA4400 1px solid;
}

.choice-color_4 {
    background-color: #356AE9;
    border: #053AB9 1px solid;
}

.choice-tab-color_1:hover {
    background-color: #E43A9A;
    cursor: pointer;
}

.choice-tab-color_2:hover {
    background-color: #81BD41;
    cursor: pointer;
}

.choice-tab-color_3:hover {
    background-color: #FF9431;
    cursor: pointer;
}

.choice-tab-color_4:hover {
    background-color: #558AFF;
    cursor: pointer;
}

.option-response-holder {
    width: 100%;
}

.option-tab-faded {
    opacity: .2;
}

.option-tab-faded:hover {
    opacity: 1;
}

.option-tab-not-allowed {
    cursor: not-allowed !important;
    background: #ececec !important;
    color: #222 !important;
    border-color: #333 !important;
}

.option-tab-not-allowed:hover {
    opacity: .2 !important;
    background: #ececec !important;
    color: #222 !important;
    border-color: #333 !important;
}

.fix-margin-small {
    margin-bottom: 10px;
}

.validate-detail {
    border: #eee 1px solid;
    padding: 3px 5px;
    background-color: #f3f3f3;
    color: #933;
    margin-right: 5px;
}

/* Tooltip container */
/* Tooltip KEER vervangen door Popper (zit in bootstrap) */
.tooltip {
    position: relative;
    display: inline-block;
    border-bottom: 1px dotted rgb(238, 188, 88);
    /* If you want dots under the hoverable text */
    opacity: 1 !important;
    color: #777;
    background-color: #ffeecd;
    margin-top: 2px;
    font-size: 14px;
    padding: 2px;
    border-radius: 4px;
}

/* Tooltip text */
.tooltip .tooltiptext {
    visibility: hidden;
    width: 177px;
    background-color: #444;
    color: #fff;
    text-align: left;
    padding: 7px 4px;
    border-radius: 5px;
    position: absolute;
    z-index: 1;
    bottom: 125%;
    left: 50%;
    margin-left: -120px;
    opacity: 0;
    transition: opacity 0.3s;

    /* Position the tooltip text */
    position: absolute;
    z-index: 1;
    bottom: 125%;
    left: 70%;
    margin-left: -127px;

    /* Fade in tooltip */
    opacity: 0;
    transition: opacity 0.3s;
}

/* Tooltip arrow */
.tooltip .tooltiptext::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 100%;
    margin-left: -57px;
    border-width: 5px;
    border-style: solid;
    border-color: #444 transparent transparent transparent;
}

/* Show the tooltip text when you mouse over the tooltip container */
.tooltip:hover .tooltiptext {
    visibility: visible;
    opacity: 1;
}

.knoppenbalk {
    /* iets donkerder blauwe balk waarin de knoppen zitten */
    background-color: #ABCAFC;
    padding: 15px 9px 9px 9px;
    border-radius: 5px;
    margin: 17px 0;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

.menuKnop {
    /* iets lichter blauwe balk waarin de menuknoppen zitten (eigenlijk kruimelpad) */
    background-color: #CEDFFD;
    border-radius: 5px;
    padding: 7px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); /* Horizontale offset, Verticale offset, Vervaging, Kleur */
}

/* een bootstrap tabel klikbaar... row handje laten zien */
/* Maak de cursor een handje bij het hoveren over klikbare rijen */
.clickable-row:hover {
    cursor: pointer;
}

/* voor edit-boek en andere bevestigings-popups */
/* Stijl voor de Lightbox */
.lightbox {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
}

.lightbox-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 21px 30px;
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 5px;
}
