/* New starting 08/2023
–––––––––––––––––––––––––––––––––––––––––––––––––– */

.custom-label-wrapper label {margin-right: 5px}
.custom-label-wrapper label {background-color: #FFF;
    -webkit-box-shadow: inset 0px 0px 5px 2px rgba(251,250,249,0.25);
    -moz-box-shadow: inset 0px 0px 5px 2px rgba(251,250,249,0.25);
    box-shadow: inset 0px 0px 5px 2px rgba(251,250,249,0.25);
border: 1px solid #e1e4dc; padding: 2px 6px; margin:0 3px 0 0; border-radius: 4px; }

.custom-label-wrapper label:hover {background-color: #FBFAF9;
filter: none !important;cursor: pointer }

.custom-label-wrapper label.active {background-color: rgba(167,221,231,.25);
border-color: #a7dde780;color:#202627;}


input[type=checkbox]{accent-color: #202627;margin-right: 1px;}

.custom-label-wrapper label.active input[type="checkbox"]{cursor: not-allowed;color: red;}

.send-info{display: block;  opacity: .75}
.star.float-right {float: right}
.star svg {fill: #357FA9}
.mt-10{margin-top:10px}
.mt-5 {margin-top:5px}
.mb-5 {margin-bottom:5px}
.mb-0 {margin-bottom:0}
.ml-0 {margin-left:0 !important}
.ml-10 {margin-left:10px}
.mx-0{margin-left:0 !important;margin-right: 0!important}
.pr-5{padding-right: 5px}
.pl-5{padding-left: 5px}
.btnWrapper div {margin-left: 5px}

.table thead:first-child tr:first-child th {border-top: 1px solid #e1e4dc;}
.table tbody > tr > td {border-top: 0}

.danger-color {color: #f54e38}

.custom-label-wrapper input:checked ~ label {color: #29549b !important;}

a, .ui-widget-content a {color: #0483d1;color:#329ada}

.dropdown-menu {background-color: #FBFAF9; text-align: left;}

/* Increase font-size
–––––––––––––––––––––––––––––––––––––––––––––––––– */
body, .btn {font-size:15px}
table.dataTable.compact tbody th, table.dataTable.compact tbody td {font-size: 12.5px; line-height: 1.15}
.btn-sm, .btn-xs {font-size: 13px;}
.navbar-toolbar {font-size: 13px;}
.label-small, .form-control-static.small {font-size: 0.875em;}

/* Breadcrump
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.breadcrumb {font-size: 13px;}
.breadcrumb a{color: inherit}
.breadcrumb > li + li::before {padding: 0 5px;color: #ccc;content: "-";}

/* Editing content
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.editing-content{padding: 15px;background-color: rgba(255,255,255,1);border: 1.5px dashed #e1e4dc !important;}

/* Dashboard
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.dashboard.ui-widget-content {border: 1px solid #e1e4dc !important;background: #fff;color: #4b5152;margin-top: 0; margin-bottom: 10px;border-radius: 4px; -webkit-box-shadow: 0px 0px 5px 2px rgba(225,228,220,0.25); -moz-box-shadow: 0px 0px 5px 2px rgba(225,228,220,0.25);box-shadow: 0px 0px 5px 2px rgba(225,228,220,0.25);}

.dashboard-title{text-align: center; font-size: 22px; font-weight: 600;margin-bottom: 20px}
.dashboard-lead{text-align: center; font-size: 1em; margin-bottom: 20px;margin-top: 20px}
.report-settings {margin-left: 10px }
.size-inherit{font-size: inherit !important }
.dashboard-settings{margin-left: 10px }
.dashboard-toolbar-title {font-size:1.25em; font-weight: 600;margin: 10px 0 10px 15px;color:#357FA9; text-transform: uppercase}
.dashboad-header-btns{margin-left: 5px }
.tooltipster:hover, .tooltipster:focus {cursor: pointer}

/* Large devices (desktops, 992px and up)*/
@media (min-width: 992px){
.dashboard-toolbar-title {margin-left: 25px;} 
}

/* Header-flex
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.header-flex{width: 100%;max-width: 1440px; margin: 0 auto 5px;position: relative;display: flex;flex-wrap: wrap;justify-content: space-between;align-items: center;
padding: 0 5px; }

/* Report-flex
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.report-flex {width: 100%;margin: 0 auto;position: relative;display: flex;flex-wrap: wrap;justify-content: center; }
.report-block {position: relative; margin:10px; width: 90%;border: 1px solid #e1e4dc !important;
  background: #fff;border-radius: 4px;padding: 15px 25px;
  -webkit-box-shadow: 0px 0px 5px 2px rgba(225,228,220,0.25);
  -moz-box-shadow: 0px 0px 5px 2px rgba(225,228,220,0.25);
  box-shadow: 0px 0px 5px 2px rgba(225,228,220,0.25)
}
.report-title {font-size:1.1em; color: #2A6A8F;font-weight: 600;}
.report-description {padding-top:5px }
.report-action {padding-top:15px}
.report-toggle {position: absolute}
.report-info {position: absolute; right: 0; top:5px;font-size: 18px}
.report-edit{font-size: 18px; position: absolute; right: 1em}
.report-list .report-edit{ position: absolute; right: 0; top:0}
.report-name{min-height: 27px; margin-top: 3px; margin-left: 100px; margin-right: 13px;}
.report-name-sm{min-height: 27px; margin-left: 100px; margin-right:0;margin-top: 5px; font-size: 13px}
ul.report-list {padding-left: 0;list-style: none; }
ul.report-list li {border-bottom: 1px dashed #e1e4dc;padding: 3px;position: relative}


/*.report-header {width: 100%;max-width: 1440px; margin: 0 auto 5px;position: relative;padding: 0 5px;}*/

.report-header .report-title{font-size: 22px;font-weight: 600;color:#5C657C; max-width: 600px; margin-left: 25px}
.report-header .report-description{font-size: 1.1em;max-width: 600px; margin-left: 25px}
.report-header-btns .btn {margin: 3px}

.report-settings-flex {width: 100%;margin: 0 auto;position: relative;display: flex;flex-wrap: wrap;justify-content: center; padding: 0 10px }
.report-settings-flex .report-block {margin:10px; width: 100% }
.report-block.has-error {border-color: #f54e38 !important;color:#1a171b; !important;background-color: #fceeef; background-color: rgba(243,95,30,.04); }
.report-block.has-error .report-title {color:#1a171b;  }

.locations-block,.level-block  {margin:10px; width: 100%;border: 1px solid #e1e4dc !important;background: #fff;border-radius: 4px;padding: 15px 25px;
-webkit-box-shadow: 0px 0px 5px 2px rgba(225,228,220,0.25);-moz-box-shadow: 0px 0px 5px 2px rgba(225,228,220,0.25);box-shadow: 0px 0px 5px 2px rgba(225,228,220,0.25); }
.locations-header, .report-settings-header {border-bottom:1px dashed #e1e4dc; margin-bottom:5px; padding-bottom: 5px; min-height: 40px;display: flex;align-items: center;}
.locations-body {width: 100%;margin: 0 auto;position: relative;display: flex;flex-wrap: wrap;justify-content: flex-start; }
.report-settings-block {margin:10px; width: 100%;border: 1px solid #e1e4dc !important;background: #fff;border-radius: 4px;padding: 15px 25px;-webkit-box-shadow: 0px 0px 5px 2px rgba(225,228,220,0.25);-moz-box-shadow: 0px 0px 5px 2px rgba(225,228,220,0.25);box-shadow: 0px 0px 5px 2px rgba(225,228,220,0.25)}

.changelog-info{font-size: .875em;background-color: #fff;border: 1px solid #e1e4dc;padding: .75em;}
.changelog-list {margin-bottom: 0}
.changelog-list li{margin-bottom: .15em}

.toggle-changelog.collapsed:after {font-weight: 900; content: "+";padding-left:5px}
.toggle-changelog:after {font-weight: 900; content: "-";padding-left:5px}

/* Large devices (desktops, 992px and up)*/
@media (min-width: 992px){
.report-block {width: 350px; margin: 7px 5px !important; display: flex; flex-direction: column;}
.report-title {}
.report-description {}
.report-action { margin-top:auto;}
.locations-body .locations-col {width: 33.33%;margin: 0 auto; }
.report-settings-block  {width: 350px; margin: 7px 5px !important; display: flex; flex-direction: column;}
}

/* extra Large devices (desktops, 1400px and up)*/
@media (min-width: 1400px){
.report-flex {max-width: 1440px;margin: 0 auto;justify-content: start; }    
.report-flex.center-flex {justify-content: center; }  
.report-block {width: 350px; margin: 7px 5px; display: flex; flex-direction: column;}
.report-settings-flex {max-width: 1440px;margin: 0 auto;justify-content: center;padding: 0 }
.report-settings-flex .report-block {width: 32.6%; margin: 7px 5px; display: flex; flex-direction: column;}
.report-title {}
.report-description {}
.report-action { margin-top:auto;}
.locations-block,.level-block  {width: 55%; margin: 7px 5px; display: flex; flex-direction: column;}
.report-settings-block  {width: 20.9%; }
.filter-block{width: 19%}
.print-settings-block{width: 23.9%}
}

.btn-primary.disabled, .btn-primary[disabled] {
  color: #9b9c9d !important;
  background-color: #f5f5f5;
  border-color: #eaeaea;
  opacity: 1;
}

/* Wide block & Narrow block
–––––––––––––––––––––––––––––––––––––––––––––––––– */
/* Large devices (desktops, 992px and up)*/
@media (min-width: 992px){  
.narrow-block{flex-grow: 1;flex-shrink: 1;flex-basis: 0%;max-width: 400px;}
.wide-block  { display: flex; flex-direction: column;flex-grow: 4;flex-shrink: 1;flex-basis: 0%;max-width: 980px;}   
}  

/* Extra large desktops min width 1920px
–––––––––––––––––––––––––––––––––––––––––––––––––– */

/* Extra Large devices (desktops, 1920px and up)*/
@media (min-width: 1920px){
.report-settings-flex{ max-width: 1860px;}   
.header-flex { max-width: 1600px;  } 
.narrow-block{max-width: 600px}
.wide-block{max-width:1600px}    
} 


/* Level
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.level-1, .level-2, .level-3 {margin: 15px 25px 0}
.level-1 .locations-body, .level-2 .locations-body, .level-3 .locations-body {margin-top: 15px;border-bottom: 1px dashed #e1e4dc;padding-bottom: 15px;}
.level-header{border-bottom: 1px dashed #e1e4dc;padding-bottom: 15px;min-height: 40px;display: flex;align-items: center;position: relative}
.level-title {font-size: 1.1em;color: #2A6A8F;font-weight: 600;white-space: nowrap; margin-right: 50px}
.level-block {padding: 0; }
.level-header select{max-width: 380px}


/* Masterchrck
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.form-check input {display: none}

/* Report-settings list
 –––––––––––––––––––––––––––––––––––––––––––––––––– */
.report-settings-list{margin-bottom: 0}
.report-settings-list .list-group-item {padding: .25rem .5rem;color: #485156;background-color: transparent;border: none;}
.report-settings-list .form-check-inline { margin-right: 1.5rem;margin-bottom: 0}
.report-settings-list  .form-check-label{font-weight: 600}
.report-settings-list.sub-list {margin-left:3rem !important}
.report-settings-list.sub-list .list-group-item { font-size:13px;}
.report-settings-list.sub-list .form-check-label{font-weight: 400}
.report-settings-list .form-check-inline {margin-right: 0;margin-bottom: 0;}

/* Custom width
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.w-100{width: 100%}

/* Large devices (desktops, 992px and up)*/
@media (min-width: 992px){
.report-mw-50{min-width: 700px;  max-width: 50%}
.filter-flex{min-width: 700px;  max-width: 50%}
.filter-print-flex {min-width: 700px;  max-width: 50%; justify-content: space-between;}
.filter-print-flex .filter-block {width: 49%; margin-left: 0 !important}
.filter-print-flex .print-settings-block {width: 49%; margin-right: 0 !important}    
   
}


/* Sortable
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.not-sortable .toc-theme-title  {position: relative;}
.not-sortable .toc-theme-title::after  {content:"Ryhmä"; padding:.1rem .25rem; margin-left: .75rem; font-size: .875rem; color:#808080; background-color: #f5f5f5; border: 1px solid #e6e6e6 }
.not-sortable .report-title {color: #5C657C;text-transform: uppercase;font-size: 1em;letter-spacing: .025em;}
.sortable .report-title {margin:0}

.sortable-header-list .toc-tes-regulation  {position: relative;}
.sortable-header-list .toc-tes-regulation::after  {content:"Raportti"; padding:.1rem .25rem; margin-left: .75rem; font-size: .875rem; color:#000; background-color: #adf045; }
.sortable-header-list .toc-tes-title  {position: relative;}
.sortable-header-list .toc-tes-title::after {content:"Otsikko"; padding:.1rem .25rem; margin-left: .75rem; font-size: .875rem; color:#fff; background-color: #000 }

.not-sortable li {padding-top: .75rem;border-radius: 0 !important}
.sortable-header-list {margin-top: .25rem;margin-bottom: .5rem}
.sortable-bg {background: #efe7f5 !important; background-color: #4fcb6e1a !important; border:1px solid rgba(79,203,110,.25) !important}
.sortable:empty, .sortable:blank {padding-bottom: 20px;border: 1px dashed red;}

.sortable {border-radius:0}
.sortable .list-group-item {background: rgba(245,245,245,.5); border-color:#e6e6e6;border-radius:0; margin-top: .5rem; border-top:1px solid #e6e6e6;}
.sortable .list-group-item:hover,.sortable .list-group-item:focus {background: #f5f5f5;border:1px solid rgba(98,20,161,.25)}
.sortable-header-list li ol {margin: .5rem 1rem .5rem 2rem;min-height: 3rem}
.sortable-header-list li ol li {background-color: rgba(255,255,255,.5)}


/* Muokkaus ok/virhe
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.ecss-formFieldChanged {color: #1a171b;background-color: rgba(87,175,229,.1);border-color: #57AFE5;}  
    
.has-error .form-control, .input-has-error {
  border-color: #f54e38 !important;
  color:#1a171b; !important;
background-color: #fceeef;
  background-color: rgba(243,95,30,.04); 
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23DC3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23DC3545' stroke='none'/%3e%3c/svg%3e");
background-repeat: no-repeat;
background-position: right calc(.375em + .1875rem) center;
background-size: calc(.75em + .375rem) calc(.75em + .375rem);
}

.ecss-formFieldChanged {
 color: #1a171b;    
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%234FCB6E' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
background-repeat: no-repeat;
background-position: right calc(.375em + .1875rem) center;
background-size: calc(.75em + .375rem) calc(.75em + .375rem);
background-color: #e5f7e9;    
background-color: rgba(79,203,110,.05);    
border-color: #4FCB6E !important;
}

select.ecss-formFieldChanged {
background-position: right calc(1em + .1875rem) center;
}

/* Report DB toggle
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.dashboard-title-row {
    position: relative;
    margin-bottom: 20px;
}
.dashboard-title-row .dashboard-title {
    margin-bottom: 0;
}
/* Match toggle container to report card area width */
@media (min-width: 992px){
    .dashboard-title-row {
        max-width: 1080px;
        margin: 0 auto 20px;
    }
}
@media (min-width: 1400px){
    .dashboard-title-row {
        max-width: 1440px;
    }
}
@media (min-width: 1920px){
    .dashboard-title-row {
        max-width: 1860px;
    }
}
.report-db-toggle {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    gap: 12px;
    background: #f8f9fa;
    border: 1px solid #e1e4dc;
    border-radius: 8px;
    padding: 8px 18px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.08);
    font-size: 14px;
    white-space: nowrap;
}
.report-db-toggle-label {
    color: #333;
    font-weight: 600;
}
.report-db-toggle-control {
    position: relative;
    display: inline-block;
    width: 52px;
    height: 28px;
    flex-shrink: 0;
}
.report-db-checkbox {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}
.report-db-switch {
    display: block;
    width: 52px;
    height: 28px;
    background: #ccc;
    border-radius: 14px;
    cursor: pointer;
    transition: background-color 0.3s ease;
    position: relative;
}
.report-db-switch::after {
    content: '';
    position: absolute;
    top: 3px;
    left: 3px;
    width: 22px;
    height: 22px;
    background: #fff;
    border-radius: 50%;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2);
    transition: transform 0.3s ease;
}
.report-db-checkbox:checked + .report-db-switch {
    background-color: #007bff;
}
.report-db-checkbox:checked + .report-db-switch::after {
    transform: translateX(24px);
}
.report-db-status {
    font-weight: 600;
    font-size: 14px;
}
.report-db-status.status-on {
    color: #007bff;
}
.report-db-status.status-off {
    color: #dc3545;
}