/*
Template Name: Moltran Dashboard build with Bootstrap v3.3.5
Template Version: 1.0
Author: CoderThemes
Email: coderthemes@gmail.com
Date: Jun 2015
*/

/* TABLE OF CONTENTS
  1) General
  2) Bootstrap RESET
    2.0 Dropdown
    2.1 Panels
    2.2 Buttons
    2.3 Choose-button
    2.4 Background Colors
    2.5 text color
    2.6 text input
    2.7 Labels
    2.8 Badge
    2.9 Pagination
    2.10 Tabs-Accordions
    2.11 Progress Bars
    2.12 Modals
    2.13 Alerts
    2.14 list group
    2.15 Other Inputs
  3) Portlets
  4) Topbar
  5) Sidebar
  6) Right-Sidebar
  7) Email (read,compose,inbox)
  8) Calendar
  9) CHECKBOX-RADIO BUTTON
 10) Widget
 11) Gallery
 12) Pricing Tables
 13) FORMS
 14) TABLES
 15) CHARTS
 16) MAPS
 17) PAGES
    17.1 Profile
    17.2 TIMELINE
    17.3 Log-in
    17.4 Lock-screen
    17.5 Error-pages
    17.6 Coming soon
    17.7 Maintenance
    17.8 Conatct
 18) RESPONSIVE
*/

@import url(https://fonts.googleapis.com/css?family=Nunito:400,300,700);
@import url(https://fonts.googleapis.com/css?family=Roboto:400,500,700);

/******** 1. General ********/

body {
    background: #f5f5f5;
    margin: 0;
    -webkit-text-size-adjust: 100%;
    font-family: "Nunito", sans-serif;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 10px 0;
}
h1 {
    line-height: 43px;
}
h2 {
    line-height: 35px;
}
h3 {
    line-height: 30px;
}
h4 {
    line-height: 22px;
}
h3 small,
h4 small,
h5 small {
    color: #444;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "Roboto", sans-serif;
    color: #505458;
}
.h5,
h5 {
    font-size: 12px;
}
* {
    outline: none !important;
}
a:hover,
a:active,
a:focus {
    outline: 0;
    text-decoration: none;
}
:focus {
    outline: none;
}
::-moz-focus-inner {
    border: 0;
}
::selection {
    background: rgba(49, 126, 235, 0.5);
    color: #ffffff;
}
::-moz-selection {
    background: rgba(49, 126, 235, 0.5);
    color: #ffffff;
}
.container {
    width: auto;
}
.container-alt {
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}
.footer {
    color: #58666e;
    /* position: absolute; */
    width: 100%;
    bottom: 0px;
    padding: 20px 30px;
    background-color: #f9f9f9;
    border-top: 1px solid rgba(0, 0, 0, 0.05);
}
#wrapper {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
}
.page {
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}

.page-title {
    margin-bottom: 24px;
}
.breadcrumb {
    background-color: transparent;
    margin-top: 5px;
    margin-bottom: 15px;
}

/******** 2. Bootstrap RESET ********/
/* ROW/Col */
.row {
    margin-right: -10px;
    margin-left: -10px;
}
.col-lg-1,
.col-lg-10,
.col-lg-11,
.col-lg-12,
.col-lg-2,
.col-lg-3,
.col-lg-4,
.col-lg-5,
.col-lg-6,
.col-lg-7,
.col-lg-8,
.col-lg-9,
.col-md-1,
.col-md-10,
.col-md-11,
.col-md-12,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-6,
.col-md-7,
.col-md-8,
.col-md-9,
.col-sm-1,
.col-sm-10,
.col-sm-11,
.col-sm-12,
.col-sm-2,
.col-sm-3,
.col-sm-4,
.col-sm-5,
.col-sm-6,
.col-sm-7,
.col-sm-8,
.col-sm-9,
.col-xs-1,
.col-xs-10,
.col-xs-11,
.col-xs-12,
.col-xs-2,
.col-xs-3,
.col-xs-4,
.col-xs-5,
.col-xs-6,
.col-xs-7,
.col-xs-8,
.col-xs-9 {
    padding-left: 10px;
    padding-right: 10px;
}
/* 2.0 Dropdown */
.dropdown-menu {
    box-shadow: none;
    padding: 4px 0;
    -webkit-animation: dropdownOpen 0.3s ease-out;
    -o-animation: dropdownOpen 0.3s ease-out;
    animation: dropdownOpen 0.3s ease-out;
    border: 0;
    box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26);
}
.dropdown-menu > li > a {
    padding: 6px 20px;
}
@-webkit-keyframes dropdownOpen {
    0% {
        -webkit-transform: scale(0);
        -ms-transform: scale(0);
        -o-transform: scale(0);
        transform: scale(0);
        opacity: 0;
    }
    100% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
}
@keyframes dropdownOpen {
    0% {
        -webkit-transform: scale(0);
        -ms-transform: scale(0);
        -o-transform: scale(0);
        transform: scale(0);
        opacity: 0;
    }
    100% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
}

/* 2.1 panels*/
.panel {
    border: none;
    border-radius: 0px;
    margin-bottom: 20px;
    -webkit-box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.1);
}
.panel .panel-body {
    padding: 20px;
}
.panel .panel-body p {
    margin: 0px;
}
.panel .panel-body p + p {
    margin-top: 15px;
}
.panel-heading {
    border-radius: 0;
    border: none !important;
    padding: 10px 20px;
}
.panel-default > .panel-heading {
    color: #797979 !important;
    background-color: #fafafa !important;
    border-bottom: none !important;
}
.panel-title {
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 600;
    margin-bottom: 0;
    margin-top: 0;
}
.panel-footer {
    background: #fafafa;
    border-top: 0px;
}
.panel-color .panel-title {
    color: #ffffff;
}
.panel-primary > .panel-heading {
    background-color: #1e88e5;
}
.panel-success > .panel-heading {
    background-color: #1abfb7 !important;
    color: #f3f3f3 !important;
}
.panel-info > .panel-heading {
    background-color: #29b6f6;
    color: #fff;
}
.panel-warning > .panel-heading {
    background-color: #ffd740;
}
.panel-danger > .panel-heading {
    background-color: #ef5350;
}
.panel-purple > .panel-heading {
    background-color: #7e57c2;
}
.panel-pink > .panel-heading {
    background-color: #ec407a;
}
.panel-inverse > .panel-heading {
    background-color: #212121;
}
.panel-border {
    border-radius: 3px;
}
.panel-border .panel-heading {
    background-color: #ffffff;
    border-top: 3px solid #ccc !important;
    border-radius: 3px;
    padding: 10px 20px 0px;
}
.panel-border .panel-body {
    padding: 15px 20px 20px 20px;
}
.panel-border.panel-primary .panel-heading {
    border-color: #1e88e5 !important;
    color: #1e88e5 !important;
}
.panel-border.panel-success .panel-heading {
    border-color: #1abfb7 !important;
    color: #1abfb7 !important;
}
.panel-border.panel-info .panel-heading {
    border-color: #29b6f6 !important;
    color: #29b6f6 !important;
}
.panel-border.panel-warning .panel-heading {
    border-color: #ffd740 !important;
    color: #ffd740 !important;
}
.panel-border.panel-danger .panel-heading {
    border-color: #ef5350 !important;
    color: #ef5350 !important;
}
.panel-border.panel-purple .panel-heading {
    border-color: #7e57c2 !important;
    color: #7e57c2 !important;
}
.panel-border.panel-pink .panel-heading {
    border-color: #ec407a !important;
    color: #ec407a !important;
}
.panel-border.panel-inverse .panel-heading {
    border-color: #212121 !important;
    color: #212121 !important;
}
.panel-fill {
    border-radius: 3px;
}
.panel-fill .panel-heading {
    background-color: transparent;
    color: #ffffff;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5) !important;
}
.panel-fill .panel-body {
    color: rgba(255, 255, 255, 0.85);
}
.panel-fill.panel-default .panel-body {
    color: #666;
}
.panel-fill.panel-default .panel-heading {
    background-color: transparent;
    color: #333;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1) !important;
}
.panel-fill.panel-primary {
    background-color: #489ce7;
}
.panel-fill.panel-success {
    background-color: #58c386;
}
.panel-fill.panel-info {
    background-color: #50c1f4;
}
.panel-fill.panel-warning {
    background-color: #fcdc63;
}
.panel-fill.panel-danger {
    background-color: #ef7270;
}
.panel-fill.panel-purple {
    background-color: #9475cb;
}
.panel-fill.panel-pink {
    background-color: #ec6391;
}
.panel-fill.panel-inverse {
    background-color: #4a4a4a;
}

/* 2.2 Buttons */
.btn {
    border-radius: 3px;
    font-family: "Nunito", sans-serif;
    letter-spacing: 0.2px;
    opacity: 0.93;
    -webkit-box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.1);
}
.btn:hover,
.btn:focus {
    opacity: 1;
    -webkit-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16),
        0 2px 10px 0 rgba(0, 0, 0, 0.12);
    -moz-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16),
        0 2px 10px 0 rgba(0, 0, 0, 0.12);
    box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16),
        0 2px 10px 0 rgba(0, 0, 0, 0.12);
}
.btn-primary,
.btn-success,
.btn-info,
.btn-warning,
.btn-danger,
.btn-inverse,
.btn-purple,
.btn-pink {
    color: #ffffff !important;
}
.btn-default:hover,
.btn-default:focus,
.btn-default:active {
    background-color: #f9f9f9;
}
.btn-primary,
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.btn-primary.focus,
.btn-primary:active,
.btn-primary:focus,
.btn-primary:hover,
.open > .dropdown-toggle.btn-primary {
    background-color: #1e88e5;
    border: 1px solid #1e88e5;
}
.btn-success,
.btn-success:hover,
.btn-success:focus,
.btn-success:active,
.btn-success.active,
.btn-success.focus,
.btn-success:active,
.btn-success:focus,
.btn-success:hover,
.open > .dropdown-toggle.btn-success {
    background-color: #1abfb7;
    border: 1px solid #1abfb7;
}
.btn-info,
.btn-info:hover,
.btn-info:focus,
.btn-info:active,
.btn-info.active,
.btn-info.focus,
.btn-info:active,
.btn-info:focus,
.btn-info:hover,
.open > .dropdown-toggle.btn-info {
    background-color: #29b6f6;
    border: 1px solid #29b6f6;
}
.btn-warning,
.btn-warning:hover,
.btn-warning:focus,
.btn-warning:active,
.btn-warning.active,
.btn-warning.focus,
.btn-warning:active,
.btn-warning:focus,
.btn-warning:hover,
.open > .dropdown-toggle.btn-warning {
    background-color: #ffd740;
    border: 1px solid #ffd740;
    color: #333 !important;
}
.btn-danger,
.btn-danger:active,
.btn-danger:focus,
.btn-danger:hover,
.btn-danger.active,
.btn-danger.focus,
.btn-danger:active,
.btn-danger:focus,
.btn-danger:hover,
.open > .dropdown-toggle.btn-danger {
    background-color: #ef5350;
    border: 1px solid #ef5350;
}
.btn-inverse,
.btn-inverse:hover,
.btn-inverse:focus,
.btn-inverse:active,
.btn-inverse.active,
.btn-inverse.focus,
.btn-inverse:active,
.btn-inverse:focus,
.btn-inverse:hover,
.open > .dropdown-toggle.btn-inverse {
    background-color: #212121;
    border: 1px solid #212121;
    color: #ffffff;
}
.btn-purple,
.btn-purple:hover,
.btn-purple:focus,
.btn-purple:active {
    background-color: #7e57c2;
    border: 1px solid #7e57c2;
    color: #ffffff;
}
.btn-pink,
.btn-pink:hover,
.btn-pink:focus,
.btn-pink:active {
    background-color: #ec407a;
    border: 1px solid #ec407a;
    color: #ffffff;
}
.btn-custom {
    background: transparent;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    border-width: 1px;
    -webkit-transition: all 400ms ease-in-out;
    -moz-transition: all 400ms ease-in-out;
    -o-transition: all 400ms ease-in-out;
    transition: all 400ms ease-in-out;
}
.btn-custom.btn-default:hover,
.btn-custom.btn-default:active,
.btn-custom.btn-default:focus {
    color: #333 !important;
}
.btn-custom.btn-primary {
    color: #1e88e5 !important;
}
.btn-custom.btn-success {
    color: #1abfb7 !important;
}
.btn-custom.btn-info {
    color: #29b6f6 !important;
}
.btn-custom.btn-warning {
    color: #ffd740 !important;
}
.btn-custom.btn-danger {
    color: #ef5350 !important;
}
.btn-custom.btn-inverse {
    color: #212121 !important;
}
.btn-custom.btn-purple {
    color: #7e57c2 !important;
}
.btn-custom.btn-pink {
    color: #ec407a !important;
}
.btn-custom:hover,
.btn-custom:focus {
    color: #ffffff !important;
}
.btn-rounded {
    border-radius: 2em;
    padding: 6px 18px;
}

/* 2.3 Choose-button */
.fileUpload {
    position: relative;
    overflow: hidden;
}
.fileUpload input.upload {
    position: absolute;
    top: 0;
    right: 0;
    margin: 0;
    padding: 0;
    font-size: 20px;
    cursor: pointer;
    opacity: 0;
    filter: alpha(opacity=0);
}

/* 2.4 Background Colors */
.bg-primary {
    background-color: #1e88e5;
}
.bg-success {
    background-color: #1abfb7;
}
.bg-info {
    background-color: #29b6f6;
}
.bg-warning {
    background-color: #ffd740;
}
.bg-danger {
    background-color: #ef5350;
}
.bg-muted {
    background-color: #d0d0d0;
}
.bg-inverse {
    background-color: #212121;
}
.bg-purple {
    background-color: #7e57c2;
}
.bg-pink {
    background-color: #ec407a;
}
.white-bg {
    background-color: #ffffff;
}

/* 2.5 text color*/
.text-white {
    color: #ffffff;
}
.text-danger {
    color: #ef5350;
}
.text-muted {
    color: #98a6ad;
}
.text-primary {
    color: #1e88e5;
}
.text-warning {
    color: #ffd740;
}
.text-success {
    color: #1abfb7;
}
.text-info {
    color: #29b6f6;
}
.text-inverse {
    color: #212121;
}
.text-pink {
    color: #ec407a;
}
.text-purple {
    color: #7e57c2;
}
.text-dark {
    color: #797979 !important;
}

/*2.6 text input*/
.form-control {
    background-color: #fbfbfb;
    color: rgba(0, 0, 0, 0.6);
    font-size: 13px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
    -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
    border: 1px solid #eee;
    box-shadow: none;
}
.form-control:focus {
    border: 1px solid #e0e0e0;
    background: #fff;
    box-shadow: none;
}

/* 2.7 Labels */
.label {
    border-radius: 10px;
}
.label-primary {
    background-color: #1e88e5;
}
.label-success {
    background-color: #1abfb7;
}
.label-info {
    background-color: #29b6f6;
}
.label-warning {
    background-color: #ffd740;
    color: #9f8526;
}
.label-danger {
    background-color: #ef5350;
}
.label-purple {
    background-color: #7e57c2;
}
.label-pink {
    background-color: #ec407a;
}
.label-inverse {
    background-color: #212121;
}

/* 2.8 Badge */
.badge {
    text-transform: uppercase;
    font-weight: normal;
    padding: 4px 7px;
    font-size: 9px;
    margin-top: 1px;
    background-color: #a6a6a6;
}
.badge-xs {
    font-size: 9px;
}
.badge-xs,
.badge-sm {
    -webkit-transform: translate(0, -2px);
    -ms-transform: translate(0, -2px);
    -o-transform: translate(0, -2px);
    transform: translate(0, -2px);
}
.badge-primary {
    background-color: #1e88e5;
}
.badge-success {
    background-color: #1abfb7;
}
.badge-info {
    background-color: #29b6f6;
}
.badge-warning {
    background-color: #ffd740;
}
.badge-danger {
    background-color: #ef5350;
}
.badge-purple {
    background-color: #7e57c2;
}
.badge-pink {
    background-color: #ec407a;
}
.badge-inverse {
    background-color: #212121;
}

/* 2.9 Pagination */
.pagination > li > a,
.pagination > li > span {
    color: #373e4a;
    background-color: #fff;
    border: 1px solid #ddd;
}
.pagination > .active > a,
.pagination > .active > span,
.pagination > .active > a:hover,
.pagination > .active > span:hover,
.pagination > .active > a:focus,
.pagination > .active > span:focus {
    background-color: #317eeb;
    border-color: #317eeb;
}

/* 2.10 Tabs-Accordions */
.tabs {
    position: relative;
    background-color: #fff;
    margin: 0 auto;
    width: 100%;
    white-space: nowrap;
    padding: 0px;
}
.tabs li.tab {
    display: block;
    float: left;
    text-align: center;
    background-color: #fff;
    margin: 0;
}
.tabs li.tab a {
    color: #ee6e73;
    display: block;
    text-decoration: none;
    width: 100%;
    height: 100%;
    -webkit-transition: color 0.28s ease;
    -moz-transition: color 0.28s ease;
    -o-transition: color 0.28s ease;
    -ms-transition: color 0.28s ease;
    transition: color 0.28s ease;
    color: #9398a0;
}
.tabs li.tab a.active {
    color: #317eeb !important;
}
.tabs .indicator {
    position: absolute;
    bottom: 0;
    height: 2px;
    background-color: #317eeb;
    will-change: left, right;
}
.tabs-top .indicator {
    top: 0;
}
.nav.nav-tabs + .tab-content,
.tabs-vertical-env .tab-content {
    background: #fff;
    padding: 30px;
    margin-bottom: 30px;
}
.nav.nav-tabs > li.active > a,
.tabs-vertical-env .nav.tabs-vertical li.active > a {
    border: 0;
    background-color: #fff;
}
.nav.nav-tabs > li > a,
.nav.tabs-vertical > li > a {
    border: none;
    padding-left: 20px;
    padding-right: 20px;
    cursor: pointer;
    border-radius: 0;
    color: #6e6e6e !important;
    line-height: 50px;
    background-color: transparent;
    font-weight: bold;
}
.nav.nav-tabs > li > a:hover,
.nav.tabs-vertical > li > a:hover {
    color: #317eeb !important;
}
.tab-content {
    color: #777;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}
.nav.nav-tabs > li:last-of-type a {
    margin-right: 0px;
}
.nav.nav-tabs {
    border-bottom: 0;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}
.navtab-bg {
    background-color: #eee;
}
.nav-tabs.nav-justified > .active > a,
.nav-tabs.nav-justified > .active > a:hover,
.nav-tabs.nav-justified > .active > a:focus,
.tabs-vertical-env .nav.tabs-vertical li.active > a {
    border: none;
}
.nav-tabs > li.active > a,
.nav-tabs > li.active > a:focus,
.nav-tabs > li.active > a:hover,
.tabs-vertical > li.active > a,
.tabs-vertical > li.active > a:focus,
.tabs-vertical > li.active > a:hover {
    color: #317eeb !important;
}
.tabs-vertical-env {
    margin-bottom: 30px;
    background-color: #eee;
}
.tabs-vertical-env .nav.tabs-vertical {
    min-width: 120px;
    width: 150px;
}
.tabs-vertical-env .nav.tabs-vertical,
.tabs-vertical-env .tab-content {
    display: table-cell;
    vertical-align: top;
}
.panel-group .panel .panel-heading a[data-toggle="collapse"].collapsed:before,
.panel-group .panel .panel-heading .accordion-toggle.collapsed:before {
    content: "\f067";
}
.panel-group .panel .panel-heading a[data-toggle="collapse"]:before,
.panel-group .panel .panel-heading .accordion-toggle:before {
    float: right;
    display: block;
    content: "\f068";
    font-family: "FontAwesome";
    font-size: 13px;
    width: 25px;
    text-align: right;
}
.panel-group .panel .panel-heading a[data-toggle="collapse"],
.panel-group .panel .panel-heading .accordion-toggle {
    display: block;
}
.tabs-vertical-env .nav.tabs-vertical li > a {
    text-align: center;
    white-space: nowrap;
    color: #333;
}
.panel-group .panel .panel-heading + .panel-collapse .panel-body {
    border-top: none;
}
.panel-group .panel-heading {
    padding: 12px 26px;
}
.panel-group.panel-group-joined .panel + .panel,
.panel-group-joined .panel-group .panel + .panel {
    margin-top: 0;
    border-top: 1px solid #eee;
}

/* 2.11 Progress Bars */
.progress {
    overflow: hidden;
    margin-bottom: 18px;
    background-color: #f5f5f5;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    height: 10px;
}
.progress-bar {
    font-size: 8px;
    line-height: 12px;
    font-weight: 600;
    box-shadow: none;
}
.progress.progress-sm {
    height: 5px !important;
}
.progress.progress-md {
    height: 15px !important;
}
.progress.progress-lg {
    height: 20px !important;
}
.progress.progress-sm .progress-bar {
    font-size: 8px;
    line-height: 5px;
}
.progress.progress-md .progress-bar {
    font-size: 10.8px;
    line-height: 14.4px;
}
.progress.progress-lg .progress-bar {
    font-size: 12px;
    line-height: 20px;
}
.progress-bar-primary {
    background-color: #1e88e5;
}
.progress-bar-success {
    background-color: #1abfb7;
}
.progress-bar-info {
    background-color: #29b6f6;
}
.progress-bar-warning {
    background-color: #ffd740;
}
.progress-bar-danger {
    background-color: #ef5350;
}
.progress-bar-inverse {
    background-color: #212121;
}
.progress-bar-purple {
    background-color: #7e57c2;
}
.progress-bar-pink {
    background-color: #ec407a;
}
.progress-animated {
    -webkit-transition: 5s all;
    -webkit-animation-duration: 5s;
    -webkit-animation-name: animationProgress;
    transition: 5s all;
    animation-duration: 5s;
    animation-name: animationProgress;
}
@-webkit-keyframes animationProgress {
    from {
        width: 0;
    }
}
@keyframes animationProgress {
    from {
        width: 0;
    }
}

/* 2.12 Modals */
.modal .modal-dialog .modal-content {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    border-color: #dddddd;
    padding: 30px;
    border-radius: 2px;
}
.modal .modal-dialog .modal-content .modal-header {
    margin: 0;
    padding: 0;
    border-bottom-width: 2px;
    padding-bottom: 15px;
}
/* .modal .modal-dialog .modal-content .modal-body {
    padding: 20px 0;
} */
.modal .modal-dialog .modal-content .modal-footer {
    padding: 0;
    padding-top: 15px;
}
.modal-full {
    width: 98%;
}
/* Modal-use */
.modal-content .nav.nav-tabs + .tab-content,
.tabs-vertical-env .tab-content,
.modal-content .panel-group {
    margin-bottom: 0px;
}
.modal-content .panel {
    border-top: none;
}
.table > thead > tr > td.middle-align,
.table > tbody > tr > td.middle-align,
.table > tfood > tr > td.middle-align,
.table > thead > tr > th.middle-align,
.table > tbody > tr > th.middle-align,
.table > tfood > tr > th.middle-align {
    vertical-align: middle;
}
.legendLabel {
    padding-left: 10px !important;
}

/* 2.13 Alerts */
.alert-success {
    color: #1abfb7;
    background-color: #ccedda;
    border-color: #7ad19f;
}
.alert-success .alert-link {
    color: #268a51;
}

/* 2.14 list group*/
.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
    background-color: #ddd;
    border-color: #ddd;
    color: #444;
    z-index: 2;
}
.list-group-item,
.list-group-item:first-child,
.list-group-item:last-child {
    border-radius: 0px;
    padding: 12px 20px;
}
.list-group-item-heading {
    font-weight: 300;
}
.list-group-item.active > .badge,
.nav-pills > .active > a > .badge {
    color: #317eeb;
}
.list-group-item.active .list-group-item-text,
.list-group-item.active:focus .list-group-item-text,
.list-group-item.active:hover .list-group-item-text {
    color: #317eeb;
}
/* 2.15 Other Inputs */
.has-success .form-control {
    border-color: #1abfb7;
    box-shadow: none !important;
}
.has-warning .form-control {
    border-color: #ffd740;
    box-shadow: none !important;
}
.has-error .form-control {
    border-color: #ef5350;
    box-shadow: none !important;
}
.input-group-addon {
    border: 1px solid #eee;
    border-radius: 2px;
}

/***************** 3.Portlets ****************/
.portlet {
    margin-bottom: 20px;
    background: #fff;
    transition: all 0.4s;
    -moz-transition: all 0.4s;
    -webkit-transition: all 0.4s;
    -o-transition: all 0.4s;
    -webkit-box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.1);
}
.portlet .portlet-heading {
    padding: 12px 20px;
    border-radius: 3px;
    color: #fff;
}
.portlet .portlet-heading .portlet-title {
    float: left;
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 0;
    margin-top: 0;
    color: #fff;
}
.portlet .portlet-heading .portlet-widgets {
    position: relative;
    text-align: right;
    float: right;
    padding-left: 15px;
    display: inline-block;
    font-size: 15px;
    line-height: 30px;
}
.portlet-default .portlet-title {
    color: #797979 !important;
}
.portlet .portlet-body {
    background: #fff;
    padding: 15px;
    -webkit-border-bottom-right-radius: 5px;
    -webkit-border-bottom-left-radius: 5px;
    -moz-border-radius-bottomright: 5px;
    -moz-border-radius-bottomleft: 5px;
    border-bottom-right-radius: 5px;
    border-bottom-left-radius: 5px;
}
.portlet .portlet-heading .portlet-widgets .divider {
    margin: 0 5px;
}
.portlet .portlet-heading.bg-purple a,
.portlet .portlet-heading.bg-info a,
.portlet .portlet-heading.bg-success a,
.portlet .portlet-heading.bg-primary a,
.portlet .portlet-heading.bg-danger a,
.portlet .portlet-heading.bg-warning a,
.portlet .portlet-heading.bg-inverse a,
.portlet .portlet-heading.bg-pink a {
    color: #fff;
}
.portlet .portlet-heading a {
    color: #999;
}
.panel-disabled {
    position: absolute;
    left: 15px;
    right: 15px;
    top: 0;
    bottom: 15px;
    background: rgba(243, 242, 241, 0.5);
}
.loader-1 {
    -webkit-animation: loaderAnimate 1000ms linear infinite;
    -moz-animation: loaderAnimate 1000ms linear infinite;
    -o-animation: loaderAnimate 1000ms linear infinite;
    animation: loaderAnimate 1000ms linear infinite;
    clip: rect(0, 30px, 30px, 15px);
    height: 30px;
    width: 30px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -15px;
    margin-top: -15px;
}
lesshat-selector {
    -lh-property: 0;
}
@-webkit-keyframes loaderAnimate {
    0% {
        -webkit-transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(220deg);
    }
}
@-moz-keyframes loaderAnimate {
    0% {
        -moz-transform: rotate(0deg);
    }
    100% {
        -moz-transform: rotate(220deg);
    }
}
@-o-keyframes loaderAnimate {
    0% {
        -o-transform: rotate(0deg);
    }
    100% {
        -o-transform: rotate(220deg);
    }
}
@keyframes loaderAnimate {
    0% {
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(220deg);
        -moz-transform: rotate(220deg);
        -ms-transform: rotate(220deg);
        transform: rotate(220deg);
    }
}
lesshat-selector {
    -lh-property: 0;
}
@-webkit-keyframes loaderAnimate2 {
    0% {
        box-shadow: inset #555 0 0 0 8px;
        -webkit-transform: rotate(-140deg);
    }
    50% {
        box-shadow: inset #555 0 0 0 2px;
    }
    100% {
        box-shadow: inset #555 0 0 0 8px;
        -webkit-transform: rotate(140deg);
    }
}
@-moz-keyframes loaderAnimate2 {
    0% {
        box-shadow: inset #555 0 0 0 8px;
        -moz-transform: rotate(-140deg);
    }
    50% {
        box-shadow: inset #555 0 0 0 2px;
    }
    100% {
        box-shadow: inset #555 0 0 0 8px;
        -moz-transform: rotate(140deg);
    }
}
@-o-keyframes loaderAnimate2 {
    0% {
        box-shadow: inset #555 0 0 0 8px;
        -o-transform: rotate(-140deg);
    }
    50% {
        box-shadow: inset #555 0 0 0 2px;
    }
    100% {
        box-shadow: inset #555 0 0 0 8px;
        -o-transform: rotate(140deg);
    }
}
@keyframes loaderAnimate2 {
    0% {
        box-shadow: inset #555 0 0 0 8px;
        -webkit-transform: rotate(-140deg);
        -moz-transform: rotate(-140deg);
        -ms-transform: rotate(-140deg);
        transform: rotate(-140deg);
    }

    50% {
        box-shadow: inset #555 0 0 0 2px;
    }

    100% {
        box-shadow: inset #555 0 0 0 8px;
        -webkit-transform: rotate(140deg);
        -moz-transform: rotate(140deg);
        -ms-transform: rotate(140deg);
        transform: rotate(140deg);
    }
}

.loader-1:after {
    -webkit-animation: loaderAnimate2 1000ms ease-in-out infinite;
    -moz-animation: loaderAnimate2 1000ms ease-in-out infinite;
    -o-animation: loaderAnimate2 1000ms ease-in-out infinite;
    animation: loaderAnimate2 1000ms ease-in-out infinite;
    clip: rect(0, 30px, 30px, 15px);
    content: "";
    border-radius: 50%;
    height: 30px;
    width: 30px;
    position: absolute;
}

@keyframes loaderAnimate2 {
    0% {
        box-shadow: inset #fff 0 0 0 17px;
        transform: rotate(-140deg);
    }

    50% {
        box-shadow: inset #fff 0 0 0 2px;
    }

    100% {
        box-shadow: inset #fff 0 0 0 17px;
        transform: rotate(140deg);
    }
}

/***************** 4.TOPBAR ****************/
.topbar {
    left: 0px;
    right: 0;
    top: 0px;
    z-index: 999;
    background: #ffffff;
    position: fixed;
    -webkit-box-shadow: 1px 0 3px 0 rgba(0, 0, 0, 0.2);
    box-shadow: 1px 0 3px 0 rgba(0, 0, 0, 0.2);
    height: 50px;
}
.topbar .topbar-left {
    float: left;
    height: 50px;
    position: relative;
    z-index: 1;
    width: 165px;
}
.logo h1 {
    margin: 0px auto;
    height: 50px;
    text-align: center;
}
.navbar-default {
    border: none;
    margin-bottom: 0px;
    background-color: #317eeb;
    box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16),
        0 2px 10px 0 rgba(0, 0, 0, 0.12);
    border-radius: 0px;
}
.nav > li > a {
    padding: 0px 15px;
    line-height: 50px;
    color: #ffffff;
    position: relative;
}
.navbar-default .navbar-nav > li > a {
    color: #ffffff;
}
.navbar-default .navbar-nav > li > a:hover {
    color: #ffffff;
}
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .open > a:focus,
.navbar-default .navbar-nav > .open > a:hover {
    background-color: transparent;
}
.nav > li > a i {
    font-size: 20px;
}
.nav > li > a .badge {
    position: absolute;
    top: 18px;
    right: 10px;
}
.profile img {
    height: 36px;
    width: 36px;
    border: 2px solid #edf0f0;
}
.dropdown-menu-lg {
    width: 300px;
}
.dropdown-menu-lg .list-group {
    margin-bottom: 0px;
}
.dropdown-menu-lg .list-group-item {
    border: none;
    padding: 10px 20px;
}
.dropdown-menu-lg .media-heading {
    margin-bottom: 0px;
}
.dropdown-menu-lg .media-body p {
    color: #828282;
}
.notifi-title {
    color: #000;
    font-size: 16px;
    padding: 5px 0px 10px;
    font-weight: 400;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
.navbar-form {
    border: none;
    box-shadow: none;
    padding: 0px;
}

/* SEARCHBAR */
.search-bar {
    background-color: transparent !important;
    border: none !important;
    color: #fff;
    box-shadow: none !important;
    height: 50px;
    font-size: 16px;
    margin-top: 3px;
}
.btn-search {
    display: none;
}
input.search-bar::-webkit-input-placeholder {
    color: rgba(255, 255, 255, 0.6);
}
input.search-bar:-moz-placeholder {
    color: rgba(255, 255, 255, 0.6);
}
input.search-bar::-moz-placeholder {
    color: rgba(255, 255, 255, 0.6);
}
input.search-bar:-ms-input-placeholder {
    color: rgba(255, 255, 255, 0.6);
}
.logo {
    font-size: 18px;
    letter-spacing: 0.05em;
    color: #fff !important;
    font-weight: 700;
    text-transform: uppercase;
    line-height: 50px;
}
.logo i {
    font-size: 30px;
    margin-right: 5px;
    color: #ee6e73;
}
.navbar-nav {
    margin: 0px;
}

/*********** 5.SIDEBAR ***********/
.side-menu {
    width: 205px;
    top: 0;
    bottom: 0;
    z-index: 2;
}
.side-menu.left {
    background: #ffffff;
    position: absolute;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
    top: 50px;
}
body.fixed-left .side-menu.left {
    margin-top: 0px;
    position: absolute;
    height: 100%;
    bottom: 50px;
    margin-bottom: -70px;
    padding-bottom: 70px;
}
.content-page {
    margin-left: 200px;
    overflow: hidden;
    position: relative;
    min-height: 940px;
}
.content-page > .content {
    margin-top: 50px;
    margin-bottom: 60px;
    padding: 20px 5px 15px 5px;
    position: relative;
}
.button-menu-mobile {
    font-size: 21px;
    background: transparent;
    color: #888;
    border: none;
    line-height: 50px;
    color: #fff;
    padding: 0px 15px;
}
.button-menu-mobile:hover {
    color: #eee;
}
.sidebar-inner {
    height: 100%;
}
#sidebar-menu,
#sidebar-menu ul,
#sidebar-menu li,
#sidebar-menu a {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none;
    font-weight: normal;
    text-decoration: none;
    line-height: 1;
    position: relative;
}
#sidebar-menu a {
    line-height: 1.3;
}
#sidebar-menu {
    width: 100%;
    padding-bottom: 50px;
}
#sidebar-menu > ul > li > a {
    display: block;
    color: #444;
    padding: 15px 15px;
}
#sidebar-menu > ul > li > a > span {
    vertical-align: middle;
}
#sidebar-menu > ul > li > a:hover {
    background: #f3f3f3;
}
#sidebar-menu > ul > li > a > i {
    display: inline-block;
    font-size: 15px;
    line-height: 17px;
    margin-left: 3px;
    margin-right: 10px;
    text-align: center;
    vertical-align: middle;
    width: 20px;
}
#sidebar-menu > ul > li > a > i.i-right {
    margin: 3px 0 0 0;
    float: right;
}
#sidebar-menu > ul > li > a:hover {
    text-decoration: none;
}
#sidebar-menu > ul > li > a.active,
#sidebar-menu > ul > li > a.active.subdrop {
    background: #f3f3f3 !important;
}
.subdrop {
    background: #f3f3f3;
}

#sidebar-menu ul ul {
    display: none;
}

#sidebar-menu ul ul li {
    border-top: 0;
}
#sidebar-menu ul ul li.active a {
    color: #317eeb;
}
#sidebar-menu ul ul a {
    padding: 10px 25px 10px 55px;
    display: block;
    color: #75798b;
}
#sidebar-menu ul ul a:hover {
    color: #317eeb;
}
#sidebar-menu ul ul ul a {
    padding-left: 80px;
}
#sidebar-menu ul ul a i {
    margin-right: 5px;
}
#wrapper.enlarged #sidebar-menu ul ul {
    box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16),
        0 2px 10px 0 rgba(0, 0, 0, 0.12);
}
#wrapper.enlarged .left.side-menu #sidebar-menu > ul > li > a {
    padding-left: 10px;
}
#wrapper.enlarged .left.side-menu #sidebar-menu > ul > li > a:hover {
    background-color: #f3f3f3 !important;
}
#wrapper.enlarged .left.side-menu {
    width: 50px;
    z-index: 5;
}
#wrapper.enlarged .content-page {
    margin-left: 50px;
}
#wrapper.enlarged .topbar .topbar-left {
    width: 0px !important;
}
#wrapper.enlarged .topbar .topbar-left .logo span {
    opacity: 0;
    display: none;
}
#wrapper.enlarged .left.side-menu span.pull-right {
    display: none !important;
}
#wrapper.enlarged .topbar .topbar-left .logo i {
    margin-right: 0px;
}
#wrapper.enlarged .left.side-menu #sidebar-menu ul > li {
    white-space: nowrap;
}
#wrapper.enlarged .left.side-menu #sidebar-menu ul > li > ul {
    display: none;
}
#wrapper.enlarged .left.side-menu #sidebar-menu ul > li:hover > a {
    background: #ffffff;
}
#wrapper.enlarged #sidebar-menu > ul > li:hover > a.open:after,
#wrapper.enlarged #sidebar-menu > ul > li:hover > a.active:after {
    display: none;
}
#wrapper.enlarged .left.side-menu #sidebar-menu ul > li:hover > ul {
    position: absolute;
    left: 50px;
    width: 190px;
    display: block;
}
#wrapper.enlarged .left.side-menu #sidebar-menu ul ul li:hover > ul {
    position: absolute;
    left: 190px;
    margin-top: -36px;
    width: 190px;
    display: block;
}
#wrapper.enlarged .left.side-menu #sidebar-menu ul > li:hover > ul a {
    background: #fff;
    padding-left: 15px;
    border: none;
    width: 190px;
    box-shadow: none;
    z-index: 6;
    position: relative;
    border-left: 3px solid #edf0f0;
}
#wrapper.enlarged .left.side-menu #sidebar-menu ul ul li > a span.pull-right {
    position: absolute;
    right: 20px;
    top: 12px;
    -ms-transform: rotate(270deg);
    -webkit-transform: rotate(270deg);
    transform: rotate(270deg);
}
#wrapper.enlarged .left.side-menu #sidebar-menu ul > li > a span {
    display: none;
    padding-left: 10px;
}

#wrapper.enlarged .left.side-menu #sidebar-menu ul > li:hover > a {
    width: 230px;
    position: relative;
}
#wrapper.enlarged .left.side-menu #sidebar-menu ul > li {
    position: relative;
}
#wrapper.enlarged .left.side-menu #sidebar-menu ul > li:hover a span {
    display: inline;
}
/* Leftbar Profile */
#wrapper.enlarged .left.side-menu .user-details {
    display: none;
}
#wrapper.enlarged .left.side-menu {
    padding-top: 20px;
}
.user-details {
    position: relative;
    min-height: 80px;
    padding: 20px;
}
.user-details img {
    position: relative;
    z-index: 9999;
    object-fit: contain;
    object-position: center;
}
.user-details .user-info {
    margin-left: 60px;
    z-index: 99999;
    position: relative;
    color: #444;
}
.user-details .user-info a.dropdown-toggle {
    font-family: "Roboto", sans-serif;
    font-weight: 600;
    color: #666;
    font-size: 16px;
    padding-top: 5px;
    display: block;
}
#wrapper.right-bar-enabled .right-bar {
    right: 0;
}
#wrapper.right-bar-enabled .left-layout {
    left: 0;
}
.side-bar.right-bar {
    float: right !important;
    right: -266px;
    top: 50px;
}
.side-bar {
    position: fixed;
    height: 100%;
    width: 240px;
    background-color: #ffffff;
    display: block;
    float: left;
    box-shadow: 0px 0px 8px 1px rgba(0, 0, 0, 0.1);
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
    overflow-y: auto;
}

/************* 6.RIGHT SIDEBAR ************/
.right-bar {
    z-index: 99 !important;
    background: #ffffff !important;
}
.right-bar h4 {
    border-bottom: 1px solid #eee;
    padding-bottom: 10px;
}
.contact-list {
    max-height: 600px;
}
.contact-list .list-group-item {
    border: none;
}
.contact-list .list-group-item:hover {
    background: #f5f5f5;
}
.contacts-list .avatar {
    width: 30px;
    display: inline-block;
    margin-right: 5px;
    float: left;
}
.contacts-list .avatar img {
    border-radius: 50%;
    width: 100%;
}
.contacts-list .list-group-item span.name {
    white-space: nowrap;
    width: 130px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;
    float: left;
    padding-top: 6px;
    padding-left: 5px;
    color: #707780;
}
.contacts-list i.online {
    color: #a0d269;
}
.contacts-list i {
    float: right;
    line-height: 30px;
    color: #ddd;
    font-size: 9px;
}
.contact-list i.offline {
    color: #ef5350;
}
.contact-list i.away {
    color: #ffd740;
}

/************ 7.Email ************/
.mails a {
    color: #444;
}
.mails .checkbox {
    margin-top: 0px;
    margin-bottom: 0px;
    vertical-align: middle;
}
.mails .checkbox label {
    min-height: 16px;
}

/************ 8.Calendar ************/
.calendar {
    margin-bottom: 0px;
    float: left;
}
.fc-toolbar {
    margin-bottom: 5px;
}
.fc-toolbar h2 {
    font-size: 18px;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 30px;
}
.fc-day {
    background: #fff;
}
.fc-toolbar .fc-state-active,
.fc-toolbar .ui-state-active,
.fc-toolbar button:focus,
.fc-toolbar button:hover,
.fc-toolbar .ui-state-hover {
    z-index: 0;
}
.fc-widget-header,
.fc-widget-content {
    border: 1px solid #d5d5d5;
}
.fc th.fc-widget-header {
    background: #ddd;
    font-size: 13px;
    text-transform: uppercase;
    line-height: 20px;
    padding: 10px 0px;
}
.fc-button {
    border: 1px solid #d5d5d5;
    background: #fff;
    color: #555;
    text-transform: capitalize;
}
.fc-text-arrow,
.fc-text-arrow {
    font-family: arial;
    font-size: 16px;
}
.fc-state-hover {
    background: #f5f5f5;
}
.fc-state-highlight,
.fc-cell-overlay {
    background: #f0f0f0;
}
.fc-unthemed .fc-today {
    background: #fff;
}
.fc-event {
    font-size: 12px;
    padding: 5px 5px;
    text-align: center;
    margin: 5px 7px;
    border: none;
    border-radius: 2px;
    cursor: move;
}
.external-event {
    cursor: move;
    margin: 10px 0;
    padding: 6px 10px;
    color: #ffffff;
}
.fc-basic-view td.fc-week-number span,
.fc-basic-view td.fc-day-number {
    padding-right: 5px;
}
.fc-time-grid .fc-slats td {
    height: 50px !important;
}
.fc-time-grid .fc-event {
    display: flex;
    justify-content: center;
    align-items: center;
    border-left: 5px solid;
    max-width: 350px;
}
.fc-unthemed td.fc-today {
    background: #fcf9ed !important;
}
/************ 9.CHECKBOX-RADIO BUTTON ************/

.checkbox {
    padding-left: 15px;
}
.checkbox label {
    display: inline-block;
    position: relative;
    padding-left: 5px;
}
.checkbox label::before {
    content: "";
    display: inline-block;
    position: absolute;
    width: 17px;
    height: 17px;
    left: 0;
    margin-left: -20px;
    border: 1px solid #cccccc;
    border-radius: 3px;
    background-color: #fff;
    -webkit-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}
.checkbox label::after {
    display: inline-block;
    position: absolute;
    width: 16px;
    height: 16px;
    left: 0;
    top: 0;
    margin-left: -20px;
    padding-left: 3px;
    padding-top: 1px;
    font-size: 11px;
    color: #555555;
}
.checkbox input[type="checkbox"] {
    opacity: 0;
    z-index: 1;
    cursor: pointer;
}
.checkbox input[type="checkbox"]:focus + label::before {
    outline: thin dotted;
    outline: none;
    outline-offset: -2px;
}
.checkbox input[type="checkbox"]:checked + label::after {
    font-family: "FontAwesome";
    content: "\f00c";
}
.checkbox input[type="checkbox"]:disabled + label {
    opacity: 0.65;
}
.checkbox input[type="checkbox"]:disabled + label::before {
    background-color: #eeeeee;
    cursor: not-allowed;
}
.checkbox.checkbox-circle label::before {
    border-radius: 50%;
}
.checkbox.checkbox-inline {
    margin-top: 0;
}
.checkbox.checkbox-single label {
    height: 17px;
}
.checkbox-primary input[type="checkbox"]:checked + label::before {
    background-color: #1e88e5;
    border-color: #1e88e5;
}
.checkbox-primary input[type="checkbox"]:checked + label::after {
    color: #fff;
}
.checkbox-danger input[type="checkbox"]:checked + label::before {
    background-color: #ef5350;
    border-color: #ef5350;
}
.checkbox-danger input[type="checkbox"]:checked + label::after {
    color: #fff;
}
.checkbox-info input[type="checkbox"]:checked + label::before {
    background-color: #29b6f6;
    border-color: #29b6f6;
}
.checkbox-info input[type="checkbox"]:checked + label::after {
    color: #fff;
}
.checkbox-warning input[type="checkbox"]:checked + label::before {
    background-color: #ffd740;
    border-color: #ffd740;
}
.checkbox-warning input[type="checkbox"]:checked + label::after {
    color: #fff;
}
.checkbox-success input[type="checkbox"]:checked + label::before {
    background-color: #1abfb7;
    border-color: #1abfb7;
}
.checkbox-success input[type="checkbox"]:checked + label::after {
    color: #fff;
}
.radio {
    padding-left: 20px;
}
.radio label {
    display: inline-block;
    position: relative;
    padding-left: 5px;
}
.radio label::before {
    content: "";
    display: inline-block;
    position: absolute;
    width: 17px;
    height: 17px;
    left: 0;
    outline: none !important;
    margin-left: -20px;
    border: 1px solid #cccccc;
    border-radius: 50%;
    background-color: #fff;
    -webkit-transition: border 0.5s ease-in-out;
    -o-transition: border 0.5s ease-in-out;
    transition: border 0.5s ease-in-out;
}
.radio label::after {
    display: inline-block;
    position: absolute;
    content: " ";
    width: 11px;
    height: 11px;
    left: 3px;
    top: 3px;
    margin-left: -20px;
    border-radius: 50%;
    background-color: #555555;
    -webkit-transform: scale(0, 0);
    -ms-transform: scale(0, 0);
    -o-transform: scale(0, 0);
    transform: scale(0, 0);
    -webkit-transition: -webkit-transform 0.1s
        cubic-bezier(0.8, -0.33, 0.2, 1.33);
    -moz-transition: -moz-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
    -o-transition: -o-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
    transition: transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
}
.radio input[type="radio"] {
    opacity: 0;
    z-index: 1;
    cursor: pointer;
}
.radio input[type="radio"]:focus + label::before {
    outline: thin dotted;
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -2px;
}
.radio input[type="radio"]:checked + label::after {
    -webkit-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    -o-transform: scale(1, 1);
    transform: scale(1, 1);
}
.radio input[type="radio"]:disabled + label {
    opacity: 0.65;
}
.radio input[type="radio"]:disabled + label::before {
    cursor: not-allowed;
}
.radio.radio-inline {
    margin-top: 0;
}
.radio.radio-single label {
    height: 17px;
}
.radio-primary input[type="radio"] + label::after {
    background-color: #1e88e5;
}
.radio-primary input[type="radio"]:checked + label::before {
    border-color: #1e88e5;
}
.radio-primary input[type="radio"]:checked + label::after {
    background-color: #1e88e5;
}
.radio-danger input[type="radio"] + label::after {
    background-color: #ef5350;
}
.radio-danger input[type="radio"]:checked + label::before {
    border-color: #ef5350;
}
.radio-danger input[type="radio"]:checked + label::after {
    background-color: #ef5350;
}
.radio-info input[type="radio"] + label::after {
    background-color: #29b6f6;
}
.radio-info input[type="radio"]:checked + label::before {
    border-color: #29b6f6;
}
.radio-info input[type="radio"]:checked + label::after {
    background-color: #29b6f6;
}
.radio-warning input[type="radio"] + label::after {
    background-color: #ffd740;
}
.radio-warning input[type="radio"]:checked + label::before {
    border-color: #ffd740;
}
.radio-warning input[type="radio"]:checked + label::after {
    background-color: #ffd740;
}
.radio-success input[type="radio"] + label::after {
    background-color: #1abfb7;
}
.radio-success input[type="radio"]:checked + label::before {
    border-color: #1abfb7;
}
.radio-success input[type="radio"]:checked + label::after {
    background-color: #1abfb7;
}

/******************* 10.Widget ***************/
.widget-s-1 {
    border-radius: 6px;
}
.mini-stat {
    background: #fff;
    padding: 20px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    margin-bottom: 20px;
}
.mini-stat-icon {
    width: 60px;
    height: 60px;
    display: inline-block;
    line-height: 60px;
    text-align: center;
    font-size: 30px;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    border-radius: 100%;
    float: left;
    margin-right: 10px;
    color: #fff;
}
.mini-stat-info {
    padding-top: 2px;
}
.mini-stat-info span {
    display: block;
    font-size: 24px;
    font-weight: 600;
    color: #555;
}
.mini-stat-info span.name {
    display: block;
    font-size: 18px;
    font-weight: 600;
    color: #777;
    margin-top: 5px;
}
.inbox-widget .inbox-item {
    padding: 10px 0;
    border-bottom: 1px solid #f1f1f1;
    overflow: hidden;
    position: relative;
}
.inbox-widget .inbox-item .inbox-item-img {
    float: left;
    width: 40px;
    display: block;
    margin-right: 15px;
}
.inbox-widget .inbox-item img {
    width: 40px;
}
.inbox-widget .inbox-item .inbox-item-author {
    color: #333;
    display: block;
    margin: 0;
}
.inbox-widget .inbox-item .inbox-item-text {
    color: #a0a0a0;
    display: block;
    margin: 0;
    font-size: 12px;
}
.inbox-widget .inbox-item .inbox-item-date {
    position: absolute;
    top: 2px;
    right: 7px;
    color: #a9a9a9;
    font-size: 11px;
}
/* Chat / Todo */
.conversation-list {
    list-style: none;
    padding: 0px 20px;
    max-height: 330px;
}
.conversation-list li {
    margin-bottom: 24px;
}
.conversation-list .chat-avatar {
    width: 40px;
    display: inline-block;
    text-align: center;
    float: left;
}
.conversation-list .chat-avatar img {
    width: 100%;
    border-radius: 100%;
}
.conversation-list .chat-avatar i {
    font-size: 12px;
    font-style: normal;
}
.conversation-list .ctext-wrap i {
    display: block;
    font-style: normal;
    font-weight: bold;
    position: relative;
    font-size: 12px;
    color: #1a2942;
}
.conversation-list .conversation-text {
    display: inline-block;
    font-size: 12px;
    float: left;
    margin-left: 12px;
    width: 70%;
}
.conversation-list .ctext-wrap {
    padding: 10px;
    background: #f5f5f5;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    position: relative;
    display: inline-block;
}
.conversation-list .ctext-wrap p {
    margin: 0px;
    padding-top: 3px;
}
.conversation-list .ctext-wrap:after {
    right: 100%;
    top: 20%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: rgba(213, 242, 239, 0);
    border-right-color: #f5f5f5;
    border-width: 5px;
    margin-top: -5px;
}
.conversation-list .odd .chat-avatar {
    float: right !important;
}
.conversation-list .odd .conversation-text {
    width: 70% !important;
    margin-right: 12px;
    text-align: right;
    float: right !important;
}
.conversation-list .odd .ctext-wrap {
    background: #e8e9ec !important;
}
.conversation-list .odd .ctext-wrap i {
    color: #acacac;
}
.conversation-list .odd .ctext-wrap:after {
    left: 100% !important;
    top: 20% !important;
    border-color: rgba(238, 238, 242, 0) !important;
    border-left-color: #e8e9ec !important;
}
.chat-send {
    padding-left: 0px;
    padding-right: 30px;
}
.chat-send button {
    width: 100%;
}
.chat-inputbar {
    padding-left: 30px;
}
/*ToDo List*/
#todo-message {
    font-size: 16px;
}
.todoapp {
    padding: 10px 30px 20px 30px !important;
}
.todo-list li {
    border: 0px;
    margin: 0px;
    border-radius: 0px;
    border-bottom: 1px solid #eee;
    padding-left: 0px !important;
    padding-right: 0px !important;
}
.todo-list li:last-of-type {
    border-bottom: none;
}
.todo-send {
    padding-left: 0px;
}

/************ 11.Gallery ************/
.portfolioFilter a {
    padding: 5px 10px;
    color: #333;
    -webkit-box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.1);
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}
.portfolioFilter a:hover,
.portfolioFilter a.current {
    background-color: #317eeb;
    color: #ffffff;
}
.thumb {
    background-color: #ffffff;
    border-radius: 3px;
    box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.1);
    width: 100%;
    padding-top: 10px;
    padding-right: 10px;
    padding-bottom: 10px;
    padding-left: 10px;
    margin-top: 30px;
}
.thumb-img {
    width: 100%;
    overflow: hidden;
    border-radius: 2px;
}
.gal-detail h4 {
    margin-top: 16px;
}

/************ 12. Pricing Tables ************/
.pricing-plan {
    padding-bottom: 50px;
}
.price_card {
    background: #fafafa;
    position: relative;
    padding-bottom: 20px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    margin-bottom: 30px;
    webkit-box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.1);
}
.pricing-header {
    color: rgb(255, 255, 255);
    -webkit-border-top-left-radius: 5px;
    -webkit-border-top-right-radius: 5px;
    -moz-border-radius-topleft: 5px;
    -moz-border-radius-topright: 5px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}
.price {
    width: 100%;
    font-size: 48px;
    font-weight: 300;
    display: block;
    text-align: center;
    padding: 30px 0 10px;
}
.price_card .name {
    width: 100%;
    font-size: 16px;
    font-weight: 700;
    display: block;
    text-align: center;
    padding: 0 0 30px;
}
.price-features {
    list-style: none;
    text-align: center;
    color: rgb(138, 138, 138);
    margin: 0;
    padding: 0;
}
.price-features li {
    margin: 0 35px;
    padding: 20px 15px;
}
.price-features li:not(:last-child) {
    border: 1px solid rgb(242, 242, 242);
    border-top: 0;
    border-left: 0;
    border-right: 0;
}
.price_card button {
    margin-top: 20px;
}
/* Pricing-2 */
.pricing-item {
    margin: 0 0 30px;
    position: relative;
    text-align: center;
}
.pricing-item-inner {
    border: 2px solid rgba(151, 160, 175, 0.2);
    vertical-align: middle;
    border-radius: 7px;
    -webkit-transition: all 0.27s cubic-bezier(0, 0, 0.58, 1);
    -moz-transition: all 0.27s cubic-bezier(0, 0, 0.58, 1);
    -o-transition: all 0.27s cubic-bezier(0, 0, 0.58, 1);
    -ms-transition: all 0.27s cubic-bezier(0, 0, 0.58, 1);
    transition: all 0.27s cubic-bezier(0, 0, 0.58, 1);
}
.pricing-wrap {
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 30px 20px;
    text-align: center;
    overflow: hidden;
}
.pricing-icon {
    padding-top: 10px;
    padding-bottom: 5px;
    position: relative;
    font-size: 32px;
    z-index: 1;
}
.pricing-title {
    position: relative;
    margin-bottom: 40px;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    z-index: 1;
}
.pr-list {
    margin: 0 -20px 30px;
    padding: 0;
    color: #97a0af;
    font-size: 12px;
    font-weight: 400;
    text-transform: uppercase;
}
.pr-list li {
    padding: 12px 20px;
    list-style: none;
}
.pricing-num {
    font-size: 40px;
    font-weight: 700;
    line-height: 1;
}
.pricing-num sup {
    font-size: 18px;
    font-weight: 400;
    position: relative;
    top: -20px;
    left: -3px;
    margin-left: -7px;
}
.pr-per {
    color: #97a0af;
    font-size: 12px;
}
.pr-button {
    margin-top: 30px;
}

/************ 13. FORMS ***********/
/* Form-validation */
.error {
    color: #ff0000;
}
/* Datapicker */
.datepicker {
    border: 1px solid #ddd;
    padding: 8px;
}
.datepicker th {
    font-size: 13px !important;
}
/* Multiple Select */
.search-input {
    margin-bottom: 10px;
}
.ms-selectable {
    outline: none !important;
    box-shadow: none;
}
.ms-container .ms-list.ms-focus {
    box-shadow: none;
}
.ms-container .ms-selectable li.ms-hover,
.ms-container .ms-selection li.ms-hover {
    background-color: #317eeb;
}
/* spinner */
.spinner-buttons.btn-group-vertical .btn {
    height: 17px;
    margin: 0;
    padding-left: 6px;
    padding-right: 6px;
    text-align: center;
    width: 22px;
    line-height: 16px;
    box-shadow: none !important;
    border: none !important;
    background-color: #eeeeee;
}
.spinner-buttons.btn-group-vertical .btn i {
    margin-top: -3px;
    line-height: 10px;
    color: #333 !important;
}
.spinner-buttons.btn-group-vertical .btn:first-child {
    border-radius: 0 0px 0 0 !important;
    -webkit-border-radius: 0 0px 0 0 !important;
}
.spinner-buttons.btn-group-vertical .btn:last-child {
    border-radius: 0 0 0px !important;
    -webkit-border-radius: 0 0 0px !important;
}
/* summernote */
.note-editor .note-toolbar {
    background-color: #f3f3f3;
    border-bottom: 1px solid #dfdfdf;
    margin: 0;
}
.note-editor {
    position: relative;
    border: 1px solid #dfdfdf;
}
.note-editor .note-statusbar {
    background-color: #fff;
}
.note-editor .note-statusbar .note-resizebar {
    height: 15px;
    border-top: 1px solid #dfdfdf;
    padding-top: 3px;
}
.note-popover .popover .popover-content,
.note-toolbar {
    padding: 5px 0 10px 5px;
}
/* Code Editer */
.code-edit-wrap {
    padding: 0px !important;
}
.cm-s-ambiance .CodeMirror-linenumber {
    color: #bcbcbc;
}
.cm-s-ambiance.CodeMirror,
.cm-s-ambiance .CodeMirror-gutters {
    background-color: #212121 !important;
    box-shadow: none;
}
/* Form- Pluins */
.bootstrap-timepicker-widget table td a:hover {
    text-decoration: none;
    background-color: transparent;
    border-radius: 4px;
    border-color: transparent;
    color: #317eeb;
}
/* X-editor */
.editor-horizontal .popover-content {
    padding: 9px 30px;
}
/* form wizard--*/
.wizard > .content {
    background: #fff;
    min-height: 240px;
}
.wizard > .content > .body {
    padding: 0px;
}
.wizard > .content > .body input {
    border: 1px solid #eeeeee;
}
.wizard > .content > .body ul > li {
    display: block;
}
.wizard > .steps .number {
    display: inline-block;
    line-height: 30px;
    border-radius: 50%;
    margin-right: 10px;
}
.wizard > .steps .disabled a,
.wizard > .steps .disabled a:hover,
.wizard > .steps .disabled a:active {
    background: #f2f2f2;
    color: #323232;
    cursor: default;
}
.wizard > .steps a,
.wizard > .steps a:hover,
.wizard > .steps a:active,
.wizard > .content {
    border-radius: 2px;
}
.wizard > .steps .current a,
.wizard > .steps .current a:hover,
.wizard > .steps .current a:active {
    background: #317eeb;
}
.wizard > .steps .current a .number,
.wizard > .steps .current a:hover .number,
.wizard > .steps .current a:active .number {
    background: transparent;
    color: #ffffff;
}
.wizard > .steps .done a,
.wizard > .steps .done a:hover,
.wizard > .steps .done a:active {
    background: #cccccc;
}
.wizard > .content > .body label.error {
    margin-left: 0;
    color: #e55957;
}
.wizard > .actions {
    margin-bottom: 30px;
}
.wizard > .actions a,
.wizard > .actions a:hover,
.wizard > .actions a:active {
    background: #317eeb;
    color: #fff;
    border-radius: 2px;
}
.wizard > .actions .disabled a,
.wizard > .actions .disabled a:hover,
.wizard > .actions .disabled a:active {
    background: #e2e2e2;
    color: #323232;
}
.wizard > .content > .body label {
    display: inline-block;
    margin-top: 10px;
}
.wizard > .content > .body ul > li {
    display: block;
    line-height: 30px;
}
/* Datapiker */
.datepicker table tr td.active,
.datepicker table tr td.active:hover,
.datepicker table tr td.active.disabled,
.datepicker table tr td.active.disabled:hover {
    box-shadow: none;
    background-color: #1a2942 !important;
    background-image: none;
}

/********** 14. TABLES **************/
.table {
    margin-bottom: 10px;
}
tbody {
    color: #797979;
}
th {
    font-size: 12px;
    color: #666;
}
/* Responsive Table */
table.focus-on tbody tr.focused th,
table.focus-on tbody tr.focused td {
    background-color: #317eeb;
    color: #ffffff;
}
.table-rep-plugin tbody th {
    font-weight: normal;
    font-size: 13px;
}
/* Editable Table */
.modal-block {
    background: transparent;
    padding: 0;
    text-align: left;
    max-width: 600px;
    margin: 40px auto;
    position: relative;
}
#datatable-editable .actions a {
    padding: 5px;
}
#datatable-editable .form-control {
    background-color: #ffffff;
    width: 100%;
}
#datatable-editable .fa-trash-o,
#datatable-editable .fa-times {
    color: #ef5350;
}
#datatable-editable .fa-pencil {
    color: #29b6f6;
}
#datatable-editable .fa-save {
    color: #1abfb7;
}
/* Datatable */
#datatable td {
    font-weight: normal;
}
div.dataTables_paginate ul.pagination {
    margin-top: 30px;
}
div.dataTables_info {
    padding-top: 38px;
}
.dataTables_empty{
    text-align: center;
    color: #999;
    font-size: 14px;
    padding: 20px 0;
}

/********* 15. CHARTS *******************/
/* Sparkline-Chart */
.jqstooltip {
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
}
/** EASY PIE CHART **/
.chart {
    position: relative;
    display: inline-block;
    width: 110px;
    height: 110px;
    margin-top: 20px;
    margin-bottom: 20px;
    text-align: center;
}
.chart.chart-widget-pie {
    margin-top: 5px;
    margin-bottom: 5px;
}
.chart canvas {
    position: absolute;
    top: 0;
    left: 0;
}
.percent {
    display: inline-block;
    line-height: 110px;
    z-index: 2;
}
.percent:after {
    content: "%";
    margin-left: 0.1em;
    font-size: 0.8em;
}
/* Flot-chart */
#flotTip {
    padding: 4px 8px;
    background-color: #000;
    z-index: 100;
    color: #fff;
    opacity: 0.7;
    font-size: 12px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

/********* 16. MAPS *******************/
.gmaps,
.gmaps-panaroma {
    height: 300px;
    background: #eeeeee;
    border-radius: 3px;
}
.gmaps-overlay {
    display: block;
    text-align: center;
    color: #fff;
    font-size: 16px;
    line-height: 40px;
    background: #317eeb;
    border-radius: 4px;
    padding: 10px 20px;
}
.gmaps-overlay_arrow {
    left: 50%;
    margin-left: -16px;
    width: 0;
    height: 0;
    position: absolute;
}
.gmaps-overlay_arrow.above {
    bottom: -15px;
    border-left: 16px solid transparent;
    border-right: 16px solid transparent;
    border-top: 16px solid #317eeb;
}
.gmaps-overlay_arrow.below {
    top: -15px;
    border-left: 16px solid transparent;
    border-right: 16px solid transparent;
    border-bottom: 16px solid #317eeb;
}

/************* 17.PAGES ****************/
.bg-img {
    background: url(../images/small/fundo_login.jpg) center;
    background-size: cover;
}
.bg-overlay {
    position: absolute;
    height: 100%;
    width: 100%;
    background-color: rgba(26, 191, 183, 0.588);
    top: 0px;
    left: 0px;
    border-radius: 6px 6px 0px 0px;
    -moz-border-radius: 6px 6px 0px 0px;
    -webkit-border-radius: 6px 6px 0px 0px;
}
/* 17.1 Profile */
.bg-picture {
    position: relative;
    padding: 40px 0px;
    margin: -20px -25px 0px -25px;
    background-repeat: no-repeat;
    background-position: center;
    -webkit-background-size: cover;
    background-size: cover;
}
.bg-picture > .bg-picture-overlay {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/PjxzdmcgeG1sbnM9Imh0dâ€¦0iMSIgaGVpZ2h0PSIxIiBmaWxsPSJ1cmwoI2xlc3NoYXQtZ2VuZXJhdGVkKSIgLz48L3N2Zz4=);
    background-image: -webkit-linear-gradient(
        top,
        rgba(255, 255, 255, 0) 0,
        rgba(0, 0, 0, 0.4) 100%
    );
    background-image: -o-linear-gradient(
        top,
        rgba(255, 255, 255, 0) 0,
        rgba(0, 0, 0, 0.4) 100%
    );
    background-image: -webkit-gradient(
        linear,
        left top,
        left bottom,
        from(rgba(255, 255, 255, 0)),
        to(rgba(0, 0, 0, 0.4))
    );
    background-image: linear-gradient(
        to bottom,
        rgba(255, 255, 255, 0) 0,
        rgba(0, 0, 0, 0.4) 100%
    );
}
.profile-info-name {
    position: relative;
}
.profile-tab-content {
    background-color: transparent !important;
    box-shadow: none !important;
    margin-top: 35px;
}
.user-tabs {
    margin-left: -35px;
    padding-left: 25px;
    background-color: #ffffff;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}
.user-tabs .nav.nav-tabs {
    box-shadow: none !important;
}
.user-tabs .nav.nav-tabs a {
    text-transform: uppercase;
}
.user-tabs .pull-right .btn {
    margin-top: 8px;
}
.about-info-p {
    margin-bottom: 20px;
}
.about-info-p p {
    font-size: 16px;
}
/* Timeline-2 */
.timeline-2 {
    position: relative;
    border-left: 2px solid #14082d;
}
.time-item {
    position: relative;
    padding-bottom: 1px;
    border-color: #dee5e7;
}
.time-item:before,
.time-item-item:after {
    display: table;
    content: " ";
}
.timeline-2 .time-item:after,
.time-item:after {
    position: absolute;
    bottom: 0;
    left: 0;
    top: 5px;
    width: 13px;
    height: 13px;
    margin-left: -8px;
    background-color: #fff;
    border-color: #14082d;
    border-style: solid;
    border-width: 2px;
    border-radius: 10px;
    content: "";
}
.item-info {
    margin-left: 15px;
    margin-bottom: 15px;
}
.item-info p {
    margin-bottom: 10px !important;
}

/* 17.2 TIMELINE */
.cd-container {
    width: 90%;
    max-width: 1170px;
    margin: 0 auto;
}
.cd-container::after {
    content: "";
    display: table;
    clear: both;
}
#cd-timeline {
    position: relative;
    padding: 2em 0;
    margin-top: 2em;
    margin-bottom: 2em;
}
#cd-timeline::before {
    content: "";
    position: absolute;
    top: 0;
    left: 18px;
    height: 100%;
    width: 4px;
    background: #fff;
}
@media only screen and (min-width: 1170px) {
    #cd-timeline {
        margin-top: 3em;
        margin-bottom: 3em;
    }
    #cd-timeline::before {
        left: 50%;
        margin-left: -2px;
    }
}
.cd-timeline-block {
    position: relative;
    margin: 2em 0;
}
.cd-timeline-block:after {
    content: "";
    display: table;
    clear: both;
}
.cd-timeline-block:first-child {
    margin-top: 0;
}
.cd-timeline-block:last-child {
    margin-bottom: 0;
}
@media only screen and (min-width: 1170px) {
    .cd-timeline-block {
        margin: 4em 0;
    }
    .cd-timeline-block:first-child {
        margin-top: 0;
    }
    .cd-timeline-block:last-child {
        margin-bottom: 0;
    }
}
.cd-timeline-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    box-shadow: 0 0 0 4px white, inset 0 2px 0 rgba(0, 0, 0, 0.08),
        0 3px 0 4px rgba(0, 0, 0, 0.05);
    text-align: center;
    line-height: 40px;
    font-size: 20px;
    color: #fff;
}
.cd-timeline-img.cd-success {
    background: #1abfb7;
}
.cd-timeline-img.cd-info {
    background: #29b6f6;
}
.cd-timeline-img.cd-pink {
    background: #ec407a;
}
.cd-timeline-img.cd-danger {
    background: #ef5350;
}
.cd-timeline-img.cd-primary {
    background: #1e88e5;
}
.cd-timeline-img.cd-warning {
    background: #ffd740;
}
@media only screen and (min-width: 1170px) {
    .cd-timeline-img {
        width: 60px;
        height: 60px;
        line-height: 60px;
        left: 50%;
        margin-left: -30px;
        -webkit-transform: translateZ(0);
        -webkit-backface-visibility: hidden;
    }
    .cssanimations .cd-timeline-img.is-hidden {
        visibility: hidden;
    }
    .cssanimations .cd-timeline-img.bounce-in {
        visibility: visible;
        -webkit-animation: cd-bounce-1 0.6s;
        -moz-animation: cd-bounce-1 0.6s;
        animation: cd-bounce-1 0.6s;
    }
}

@-webkit-keyframes cd-bounce-1 {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.5);
    }

    60% {
        opacity: 1;
        -webkit-transform: scale(1.2);
    }

    100% {
        -webkit-transform: scale(1);
    }
}
@-moz-keyframes cd-bounce-1 {
    0% {
        opacity: 0;
        -moz-transform: scale(0.5);
    }

    60% {
        opacity: 1;
        -moz-transform: scale(1.2);
    }

    100% {
        -moz-transform: scale(1);
    }
}
@keyframes cd-bounce-1 {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.5);
        -moz-transform: scale(0.5);
        -ms-transform: scale(0.5);
        -o-transform: scale(0.5);
        transform: scale(0.5);
    }

    60% {
        opacity: 1;
        -webkit-transform: scale(1.2);
        -moz-transform: scale(1.2);
        -ms-transform: scale(1.2);
        -o-transform: scale(1.2);
        transform: scale(1.2);
    }

    100% {
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
    }
}
.cd-timeline-content {
    position: relative;
    margin-left: 60px;
    background: white;
    border-radius: 0;
    padding: 1em;
    -webkit-box-shadow: 0 5px 5px -5px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0 5px 5px -5px rgba(0, 0, 0, 0.1);
    box-shadow: 0 5px 5px -5px rgba(0, 0, 0, 0.1);
}
.cd-timeline-content img {
    width: 100%;
    display: block;
}
.cd-timeline-content:after {
    content: "";
    display: table;
    clear: both;
}
.cd-timeline-content h2 {
    margin-top: 0;
}
.cd-timeline-content p,
.cd-timeline-content .cd-read-more,
.cd-timeline-content .cd-date {
    font-size: 13px;
}
.cd-timeline-content .cd-read-more,
.cd-timeline-content .cd-date {
    display: inline-block;
}
.cd-timeline-content h3 {
    margin: 0px;
    font-size: 21px;
}
.cd-timeline-content p {
    margin: 10px 0px 10px 0px;
    color: #666;
}
.cd-timeline-content .cd-read-more {
    float: right;
    padding: 0.8em 1em;
    background: #acb7c0;
    color: white;
    border-radius: 0.25em;
}
.no-touch .cd-timeline-content .cd-read-more:hover {
    background-color: #bac4cb;
}
.cd-timeline-content .cd-date {
    float: left;
    padding: 0.8em 0;
    opacity: 0.7;
}
.cd-timeline-content::before {
    content: "";
    position: absolute;
    top: 16px;
    right: 100%;
    height: 0;
    width: 0;
    border: 7px solid transparent;
    border-right: 7px solid white;
}
@media only screen and (min-width: 1170px) {
    .cd-timeline-content {
        margin-left: 0;
        padding: 1.6em;
        width: 45%;
    }
    .cd-timeline-content::before {
        top: 24px;
        left: 100%;
        border-color: transparent;
        border-left-color: white;
    }
    .cd-timeline-content .cd-read-more {
        float: left;
    }
    .cd-timeline-content .cd-date {
        position: absolute;
        width: 100%;
        left: 122%;
        top: 6px;
    }
    .cd-timeline-block:nth-child(even) .cd-timeline-content {
        float: right;
    }
    .cd-timeline-block:nth-child(even) .cd-timeline-content::before {
        top: 24px;
        left: auto;
        right: 100%;
        border-color: transparent;
        border-right-color: white;
    }
    .cd-timeline-block:nth-child(even) .cd-timeline-content .cd-read-more {
        float: right;
    }
    .cd-timeline-block:nth-child(even) .cd-timeline-content .cd-date {
        left: auto;
        right: 122%;
        text-align: right;
    }
    .cssanimations .cd-timeline-content.is-hidden {
        visibility: hidden;
    }
    .cssanimations .cd-timeline-content.bounce-in {
        visibility: visible;
        -webkit-animation: cd-bounce-2 0.6s;
        -moz-animation: cd-bounce-2 0.6s;
        animation: cd-bounce-2 0.6s;
    }
}

@media only screen and (min-width: 1170px) {
    .cssanimations
        .cd-timeline-block:nth-child(even)
        .cd-timeline-content.bounce-in {
        -webkit-animation: cd-bounce-2-inverse 0.6s;
        -moz-animation: cd-bounce-2-inverse 0.6s;
        animation: cd-bounce-2-inverse 0.6s;
    }
}
@-webkit-keyframes cd-bounce-2 {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100px);
    }

    60% {
        opacity: 1;
        -webkit-transform: translateX(20px);
    }

    100% {
        -webkit-transform: translateX(0);
    }
}
@-moz-keyframes cd-bounce-2 {
    0% {
        opacity: 0;
        -moz-transform: translateX(-100px);
    }

    60% {
        opacity: 1;
        -moz-transform: translateX(20px);
    }

    100% {
        -moz-transform: translateX(0);
    }
}
@keyframes cd-bounce-2 {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100px);
        -moz-transform: translateX(-100px);
        -ms-transform: translateX(-100px);
        -o-transform: translateX(-100px);
        transform: translateX(-100px);
    }

    60% {
        opacity: 1;
        -webkit-transform: translateX(20px);
        -moz-transform: translateX(20px);
        -ms-transform: translateX(20px);
        -o-transform: translateX(20px);
        transform: translateX(20px);
    }

    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}
@-webkit-keyframes cd-bounce-2-inverse {
    0% {
        opacity: 0;
        -webkit-transform: translateX(100px);
    }

    60% {
        opacity: 1;
        -webkit-transform: translateX(-20px);
    }

    100% {
        -webkit-transform: translateX(0);
    }
}
@-moz-keyframes cd-bounce-2-inverse {
    0% {
        opacity: 0;
        -moz-transform: translateX(100px);
    }

    60% {
        opacity: 1;
        -moz-transform: translateX(-20px);
    }

    100% {
        -moz-transform: translateX(0);
    }
}
@keyframes cd-bounce-2-inverse {
    0% {
        opacity: 0;
        -webkit-transform: translateX(100px);
        -moz-transform: translateX(100px);
        -ms-transform: translateX(100px);
        -o-transform: translateX(100px);
        transform: translateX(100px);
    }

    60% {
        opacity: 1;
        -webkit-transform: translateX(-20px);
        -moz-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        -o-transform: translateX(-20px);
        transform: translateX(-20px);
    }

    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

/* 17.3 Log-in */

.panel-pages .panel-body {
    padding: 30px;
}
.panel-pages {
    border-radius: 6px;
    max-width: 90%;
    margin: auto;
    margin-top: 60px;
}
.panel-pages .panel-heading {
    padding: 40px 20px;
    border-radius: 6px 6px 0px 0px;
    -moz-border-radius: 6px 6px 0px 0px;
    -webkit-border-radius: 6px 6px 0px 0px;
    position: relative;
}
.panel-pages .panel-heading h3 {
    z-index: 999;
    position: relative;
}

/* 17.4 Lock-screen */
.user-thumb {
    margin-top: -44px;
    z-index: 999;
    position: relative;
}
.user-thumb img {
    margin: 0px auto;
    width: 88px;
    height: 88px;
}
/* 17.5 Error-pages */
.ex-page-content h1 {
    font-size: 98px;
    line-height: 150px;
    font-weight: 700;
    color: #252932;
    text-shadow: rgba(61, 61, 61, 0.3) 1px 1px, rgba(61, 61, 61, 0.2) 2px 2px,
        rgba(61, 61, 61, 0.3) 3px 3px;
}
/* 17.6 Coming soon */
.home-wrapper {
    margin: 10% 0px;
}
.home-text {
    font-family: "Nunito", sans-serif;
}
.lj-countdown {
    color: #317eeb;
    margin-top: 40px;
    text-align: center;
}
.lj-countdown > * {
    text-align: center;
}
.lj-countdown div {
    display: inline-block;
}
.lj-countdown div span {
    width: 150px;
    display: block;
}
.lj-countdown div span:first-child {
    height: 48px;
    font-weight: 700;
    font-size: 3em;
    line-height: 48px;
}
.lj-countdown div span:last-child {
    height: 25px;
    font-size: 0.9em;
    line-height: 25px;
    color: #333;
}
/* 17.7 Maintenance */
.icon-main {
    font-size: 88px;
    margin-bottom: 50px;
}
.maintenance-page {
    margin: 10% 0%;
}
.mainten-box {
    margin-bottom: 30px;
}
.mainten-box .text-m-mode {
    width: 80%;
    margin: 0px auto;
}
/* 17.8 Conatct */
.media-main a.pull-left {
    width: 100px;
}
.media-main .info {
    overflow: hidden;
    color: #000;
}
.media-main .info h4 {
    padding-top: 10px;
    margin-bottom: 5px;
}
.social-links li a {
    background: #eff0f4;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    display: inline-block;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    color: #7a7676;
}

/* ================== 18.RESPONSIVE ========================
=======================================================*/

@media only screen and (max-width: 6000px) and (min-width: 700px) {
    .wrapper.right-bar-enabled .right-bar {
        right: 0;
        z-index: 99;
    }
}
@media (min-width: 768px) and (max-width: 991px) {
    body {
        overflow-x: hidden;
    }
}
@media (max-width: 767px) {
    body {
        overflow-x: hidden;
    }
    .mobile-sidebar {
        left: 0px;
    }
    .mobile-content {
        left: 250px;
        right: -250px;
    }
    .wrapper-page {
        width: 90%;
    }
    .navbar-nav .open .dropdown-menu {
        right: 0;
        left: auto;
        position: absolute;
        box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26);
        background-color: #fff;
    }
    .todo-send {
        padding-left: 15px;
        margin-top: 10px;
    }
    .chat-inputbar {
        padding-left: 15px;
    }
    .chat-send {
        padding-left: 15px;
        margin-top: 10px;
        padding-right: 15px;
    }
}
@media (max-width: 480px) {
    .side-menu {
        z-index: 10 !important;
    }
    .button-menu-mobile {
        display: block;
    }
    .search-bar {
        display: none !important;
    }
}
@media (max-width: 420px) {
    .hide-phone {
        display: none !important;
    }
}
/* Container-alt */
@media (min-width: 768px) {
    .container-alt {
        width: 750px;
    }
}
@media (min-width: 992px) {
    .container-alt {
        width: 970px;
    }
}
@media (min-width: 1200px) {
    .container-alt {
        width: 1170px;
    }
}
#receita table th {
    font-size: 12px !important;
}
.table-responsive {
    padding-bottom: 41px;
}

.table-responsive .row {
    margin-right: 0px;
    margin-left: 0px;
}

.w-2 {
    display: none;
}
#sidebar-menu > ul > li > a > i:first-child {
    color: #29b6f6;
}
#sidebar-menu > ul > li > a > i {
    display: inline-block;
    font-size: 15px;
    line-height: 17px;
    margin-left: 3px;
    margin-right: 10px;
    text-align: center;
    vertical-align: middle;
    width: 20px;
}
.logo {
    font-size: 18px;
    letter-spacing: 0.05em;
    color: #fff !important;
    font-weight: 700;
    text-transform: uppercase;
    line-height: 50px;
}

.logo img.img-max {
    height: 40px;
}

.logo img.img-mini {
    display: none;
}
.forced.enlarged .logo img {
    display: none;
}

.logo i {
    font-size: 24px;
    color: #167ac6;
    background: linear-gradient(#434363 13%, #167ac6 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;

    margin-right: 5px;
}

/****ATUALIZAÇÃO BOOTSTRAP 4****/
.green,
.green md-icon {
    color: #5fa65d !important;
}

.red {
    color: #d0021b !important;
}

.blue {
    color: #29b6f6;
}

.yellow {
    color: #c4a600;
}

.m-0 {
    margin: 0 !important;
}
.mt-0,
.my-0 {
    margin-top: 0 !important;
}
.mr-0,
.mx-0 {
    margin-right: 0 !important;
}
.mb-0,
.my-0 {
    margin-bottom: 0 !important;
}
.ml-0,
.mx-0 {
    margin-left: 0 !important;
}
.m-1 {
    margin: 0.25rem !important;
}
.mt-1,
.my-1 {
    margin-top: 0.25rem !important;
}
.mr-1,
.mx-1 {
    margin-right: 0.25rem !important;
}
.mb-1,
.my-1 {
    margin-bottom: 0.25rem !important;
}
.ml-1,
.mx-1 {
    margin-left: 0.25rem !important;
}
.m-2 {
    margin: 0.5rem !important;
}
.mt-2,
.my-2 {
    margin-top: 0.5rem !important;
}
.mr-2,
.mx-2 {
    margin-right: 0.5rem !important;
}
.mb-2,
.my-2 {
    margin-bottom: 0.5rem !important;
}
.ml-2,
.mx-2 {
    margin-left: 0.5rem !important;
}
.m-3 {
    margin: 1rem !important;
}
.mt-3,
.my-3 {
    margin-top: 1rem !important;
}
.mr-3,
.mx-3 {
    margin-right: 1rem !important;
}
.mb-3,
.my-3 {
    margin-bottom: 1rem !important;
}
.ml-3,
.mx-3 {
    margin-left: 1rem !important;
}
.m-4 {
    margin: 1.5rem !important;
}
.mt-4,
.my-4 {
    margin-top: 1.5rem !important;
}
.mr-4,
.mx-4 {
    margin-right: 1.5rem !important;
}
.mb-4,
.my-4 {
    margin-bottom: 1.5rem !important;
}
.ml-4,
.mx-4 {
    margin-left: 1.5rem !important;
}
.m-5 {
    margin: 3rem !important;
}
.mt-5,
.my-5 {
    margin-top: 3rem !important;
}
.mr-5,
.mx-5 {
    margin-right: 3rem !important;
}
.mb-5,
.my-5 {
    margin-bottom: 3rem !important;
}
.ml-5,
.mx-5 {
    margin-left: 3rem !important;
}
.p-0 {
    padding: 0 !important;
}
.pt-0,
.py-0 {
    padding-top: 0 !important;
}
.pr-0,
.px-0 {
    padding-right: 0 !important;
}
.pb-0,
.py-0 {
    padding-bottom: 0 !important;
}
.pl-0,
.px-0 {
    padding-left: 0 !important;
}
.p-1 {
    padding: 0.25rem !important;
}
.pt-1,
.py-1 {
    padding-top: 0.25rem !important;
}
.pr-1,
.px-1 {
    padding-right: 0.25rem !important;
}
.pb-1,
.py-1 {
    padding-bottom: 0.25rem !important;
}
.pl-1,
.px-1 {
    padding-left: 0.25rem !important;
}
.p-2 {
    padding: 0.5rem !important;
}
.pt-2,
.py-2 {
    padding-top: 0.5rem !important;
}
.pr-2,
.px-2 {
    padding-right: 0.5rem !important;
}
.pb-2,
.py-2 {
    padding-bottom: 0.5rem !important;
}
.pl-2,
.px-2 {
    padding-left: 0.5rem !important;
}
.p-3 {
    padding: 1rem !important;
}
.pt-3,
.py-3 {
    padding-top: 1rem !important;
}
.pr-3,
.px-3 {
    padding-right: 1rem !important;
}
.pb-3,
.py-3 {
    padding-bottom: 1rem !important;
}
.pl-3,
.px-3 {
    padding-left: 1rem !important;
}
.p-4 {
    padding: 1.5rem !important;
}
.pt-4,
.py-4 {
    padding-top: 1.5rem !important;
}
.pr-4,
.px-4 {
    padding-right: 1.5rem !important;
}
.pb-4,
.py-4 {
    padding-bottom: 1.5rem !important;
}
.pl-4,
.px-4 {
    padding-left: 1.5rem !important;
}
.p-5 {
    padding: 3rem !important;
}
.pt-5,
.py-5 {
    padding-top: 3rem !important;
}
.pr-5,
.px-5 {
    padding-right: 3rem !important;
}
.pb-5,
.py-5 {
    padding-bottom: 3rem !important;
}
.pl-5,
.px-5 {
    padding-left: 3rem !important;
}
.m-n1 {
    margin: -0.25rem !important;
}
.mt-n1,
.my-n1 {
    margin-top: -0.25rem !important;
}
.mr-n1,
.mx-n1 {
    margin-right: -0.25rem !important;
}
.mb-n1,
.my-n1 {
    margin-bottom: -0.25rem !important;
}
.ml-n1,
.mx-n1 {
    margin-left: -0.25rem !important;
}
.m-n2 {
    margin: -0.5rem !important;
}
.mt-n2,
.my-n2 {
    margin-top: -0.5rem !important;
}
.mr-n2,
.mx-n2 {
    margin-right: -0.5rem !important;
}
.mb-n2,
.my-n2 {
    margin-bottom: -0.5rem !important;
}
.ml-n2,
.mx-n2 {
    margin-left: -0.5rem !important;
}
.m-n3 {
    margin: -1rem !important;
}
.mt-n3,
.my-n3 {
    margin-top: -1rem !important;
}
.mr-n3,
.mx-n3 {
    margin-right: -1rem !important;
}
.mb-n3,
.my-n3 {
    margin-bottom: -1rem !important;
}
.ml-n3,
.mx-n3 {
    margin-left: -1rem !important;
}
.m-n4 {
    margin: -1.5rem !important;
}
.mt-n4,
.my-n4 {
    margin-top: -1.5rem !important;
}
.mr-n4,
.mx-n4 {
    margin-right: -1.5rem !important;
}
.mb-n4,
.my-n4 {
    margin-bottom: -1.5rem !important;
}
.ml-n4,
.mx-n4 {
    margin-left: -1.5rem !important;
}
.m-n5 {
    margin: -3rem !important;
}
.mt-n5,
.my-n5 {
    margin-top: -3rem !important;
}
.mr-n5,
.mx-n5 {
    margin-right: -3rem !important;
}
.mb-n5,
.my-n5 {
    margin-bottom: -3rem !important;
}
.ml-n5,
.mx-n5 {
    margin-left: -3rem !important;
}
.m-auto {
    margin: auto !important;
}
.mt-auto,
.my-auto {
    margin-top: auto !important;
}
.mr-auto,
.mx-auto {
    margin-right: auto !important;
}
.mb-auto,
.my-auto {
    margin-bottom: auto !important;
}
.ml-auto,
.mx-auto {
    margin-left: auto !important;
}
@media (min-width: 576px) {
    .m-sm-0 {
        margin: 0 !important;
    }
    .mt-sm-0,
    .my-sm-0 {
        margin-top: 0 !important;
    }
    .mr-sm-0,
    .mx-sm-0 {
        margin-right: 0 !important;
    }
    .mb-sm-0,
    .my-sm-0 {
        margin-bottom: 0 !important;
    }
    .ml-sm-0,
    .mx-sm-0 {
        margin-left: 0 !important;
    }
    .m-sm-1 {
        margin: 0.25rem !important;
    }
    .mt-sm-1,
    .my-sm-1 {
        margin-top: 0.25rem !important;
    }
    .mr-sm-1,
    .mx-sm-1 {
        margin-right: 0.25rem !important;
    }
    .mb-sm-1,
    .my-sm-1 {
        margin-bottom: 0.25rem !important;
    }
    .ml-sm-1,
    .mx-sm-1 {
        margin-left: 0.25rem !important;
    }
    .m-sm-2 {
        margin: 0.5rem !important;
    }
    .mt-sm-2,
    .my-sm-2 {
        margin-top: 0.5rem !important;
    }
}
.float-right {
    float: right;
}
.float-left {
    float: left;
}
.float-none {
    float: none;
}
.text-center {
    text-align: center;
}
.d-flex {
    display: -ms-flexbox !important;
    display: flex !important;
}
.justify-content-center {
    -ms-flex-pack: center !important;
    justify-content: center !important;
}
.align-items-center {
    -ms-flex-align: center !important;
    align-items: center !important;
}
.align-items-end {
    -ms-flex-align: end !important;
    align-items: flex-end !important;
}
.justify-content-end {
    -ms-flex-pack: end !important;
    justify-content: flex-end !important;
}
/****END ATUALIZAÇÃO BOOTSTRAP 4****/

.financeiro-empty td .mini-stat-icon {
    background: #dddddd;
    float: none;
    width: 100px;
    height: 100px;
    line-height: 100px;
    font-size: 60px;
}

.financeiro .valor {
    font-size: 13px;
    font-weight: 500;
}

.financeiro-statistics {
    padding-top: 10px;
    margin-bottom: 16px;
}

.financeiro-statistics-receitas {
    color: #5fa65d !important;
    font-size: 15px;
}

.financeiro-statistics-receber {
    color: #a9a9a9 !important;
    font-size: 12px;
}

.financeiro-summary-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
    width: 100%;
    padding: 0 10px;
}

.financeiro-summary-card {
    background: #fff;
    border: 0.5px solid #e3e8ef;
    border-radius: 12px;
    padding: 20px 10px;
    text-align: center;
    display: block;
    text-decoration: none;
    transition: transform .2s, box-shadow .2s, border-color .2s;
}

.financeiro-summary-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(0, 0, 0, .08);
    text-decoration: none;
}

.financeiro-summary-card:focus {
    text-decoration: none;
}

.financeiro-summary-label {
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
    padding: 2px 10px;
    border-radius: 20px;
    margin-bottom: 10px;
    white-space: nowrap;
}

.financeiro-summary-value {
    font-size: 16px;
    font-weight: 800;
    line-height: 1.1;
    color: #737373;
}

.financeiro-sc-blue .financeiro-summary-label {
    background: #e8f2fd;
    color: #378ADD;
}

.financeiro-sc-blue.is-active {
    border-color: #7bb8e9;
    box-shadow: 0 6px 16px rgba(43, 129, 199, .12);
}

.financeiro-sc-green .financeiro-summary-label {
    background: #eaf7f2;
    color: #1abfb7;
}

.financeiro-sc-green.is-active,
.financeiro-sc-total.is-active {
    border-color: #1abfb7;
    box-shadow: 0 6px 16px rgba(29, 158, 117, .12);
}

.financeiro-sc-red .financeiro-summary-label {
    background: #fdeaea;
    color: #E24B4A;
}

.financeiro-sc-red.is-active {
    border-color: #E24B4A;
    box-shadow: 0 6px 16px rgba(226, 75, 74, .12);
}

.financeiro-sc-orange .financeiro-summary-label {
    background: #fff4e6;
    color: #d9822b;
}

.financeiro-sc-orange.is-active {
    border-color: #d9822b;
    box-shadow: 0 6px 16px rgba(217, 130, 43, .12);
}

.financeiro-sc-total .financeiro-summary-label {
    background: #eaf7f2;
    color: #1abfb7;
}

@media (max-width: 1200px) {
    .financeiro-summary-card {
        padding: 20px 5px;
    }
    .financeiro-summary-label{
        font-size: 8px;
    }
    .financeiro-summary-value{
        font-size: 14px;
    }
}

@media (max-width: 768px) {
    .financeiro-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .financeiro-summary-card.financeiro-sc-total {
        grid-column: 1 / -1;
    }
}

@media (max-width: 480px) {
    .financeiro-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .financeiro-summary-label {
        white-space: normal;
        font-size: 10px;
        padding: 2px 8px;
    }
}

table.fila-espera td {
    padding-top: 16px;
}

table tr td a {
    font-family: "Roboto", sans-serif;
    font-weight: 400;
    color: #1976d2;
}

table tr td {
    vertical-align: middle !important;
    font-weight: 400;
}

table tr td a:hover {
    font-family: "Roboto", sans-serif;
    font-weight: 400;
    color: #288ff5;
}

.text-financeiro {
    width: 150px;
    font-weight: bold;
    font-size: 13px;
    margin-right: -25px;
}

.status-icons .yellow {
    color: #c4a600;
}

.progress-bar-yellow {
    background-color: #c4a600;
}

#modal-payment22 .select2-container--default .select2-selection--single {
    border: 0px !important;
    border-bottom: 1px solid #aaa !important;
    border-radius: 0 !important;
}

.receive-payment {
    font-weight: 600;
    font-size: 12px;
    cursor: pointer;
}

.make-payment {
    font-weight: 600;
    font-size: 12px;
    cursor: pointer;
}

.select2-container--default .select2-selection--single{
    border: 1px solid #e2e2e2!important;
    height: 34px!important;
    padding-top: 2px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered{
    line-height: 30px!important;
}
.select2-container--default .select2-selection--single .select2-selection__arrow{
    height: 34px!important;
}

/* .select2-container--default .select2-selection--multiple .select2-selection__choice {
    background-color: #317eeb !important;
    color: #fff !important;
    border: none !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    color: #fff !important;
} */

.card {
    background-color: #fff;
    border: 1px solid transparent;
    border-radius: 6px;
}
.card > .card-link {
    color: #333;
}
.card > .card-link:hover {
    text-decoration: none;
}
.card > .card-link .card-img img {
    border-radius: 6px 6px 0 0;
}
.card .card-img {
    position: relative;
    padding: 0;
    display: table;
}
.card .card-img .card-caption {
    position: absolute;
    right: 0;
    bottom: 16px;
    left: 0;
}
.card .card-body {
    display: table;
    width: 100%;
    padding: 12px;
}
.card .card-header {
    border-radius: 6px 6px 0 0;
    padding: 8px;
}
.card .card-footer {
    border-radius: 0 0 6px 6px;
    padding: 8px;
}
.card .card-left {
    position: relative;
    float: left;
    padding: 0 0 8px 0;
}
.card .card-right {
    position: relative;
    float: left;
    padding: 8px 0 0 0;
}
.card .card-body h1:first-child,
.card .card-body h2:first-child,
.card .card-body h3:first-child,
.card .card-body h4:first-child,
.card .card-body .h1,
.card .card-body .h2,
.card .card-body .h3,
.card .card-body .h4 {
    margin-top: 0;
}
.card .card-body .heading {
    display: block;
}
.card .card-body .heading:last-child {
    margin-bottom: 0;
}

.card .card-body .lead {
    text-align: center;
}

@media (min-width: 768px) {
    .card .card-left {
        float: left;
        padding: 0 8px 0 0;
    }
    .card .card-right {
        float: left;
        padding: 0 0 0 8px;
    }

    .card .card-4-8 .card-left {
        width: 33.33333333%;
    }
    .card .card-4-8 .card-right {
        width: 66.66666667%;
    }

    .card .card-5-7 .card-left {
        width: 41.66666667%;
    }
    .card .card-5-7 .card-right {
        width: 58.33333333%;
    }

    .card .card-6-6 .card-left {
        width: 50%;
    }
    .card .card-6-6 .card-right {
        width: 50%;
    }

    .card .card-7-5 .card-left {
        width: 58.33333333%;
    }
    .card .card-7-5 .card-right {
        width: 41.66666667%;
    }

    .card .card-8-4 .card-left {
        width: 66.66666667%;
    }
    .card .card-8-4 .card-right {
        width: 33.33333333%;
    }
}

/* -- default theme ------ */
.card-default {
    border-color: #ddd;
    background-color: #fff;
    margin-bottom: 24px;
}
.card-default > .card-header,
.card-default > .card-footer {
    color: #333;
    background-color: #ddd;
}
.card-default > .card-header {
    border-bottom: 1px solid #ddd;
    padding: 8px;
}
.card-default > .card-footer {
    border-top: 1px solid #ddd;
    padding: 8px;
}

.card-default > .card-img:first-child img {
    border-radius: 6px 6px 0 0;
}
.card-default > .card-left {
    padding-right: 4px;
}
.card-default > .card-right {
    padding-left: 4px;
}
.card-default p:last-child {
    margin-bottom: 0;
}
.card-default .card-caption {
    color: #fff;
    text-align: center;
    text-transform: uppercase;
}

/* -- price theme ------ */
.card-price {
    border-color: #999;
    background-color: #ededed;
    margin-bottom: 24px;
}
.card-price > .card-heading,
.card-price > .card-footer {
    color: #333;
    background-color: #fdfdfd;
}
.card-price > .card-heading {
    border-bottom: 1px solid #ddd;
    padding: 8px;
}
.card-price > .card-footer {
    border-top: 1px solid #ddd;
    padding: 8px;
}
.card-price > .card-img:first-child img {
    border-radius: 6px 6px 0 0;
}
.card-price > .card-left {
    padding-right: 4px;
}
.card-price > .card-right {
    padding-left: 4px;
}
.card-price .card-caption {
    color: #fff;
    text-align: center;
    text-transform: uppercase;
}
.card-price p:last-child {
    margin-bottom: 0;
}

.card-price .price {
    text-align: center;
    color: #337ab7;
    font-size: 3em;
    text-transform: uppercase;
    line-height: 0.7em;
    margin: 24px 0 16px;
}
.card-price .price small {
    font-size: 0.4em;
    color: #66a5da;
}
.card-price .details {
    list-style: none;
    margin-bottom: 24px;
    padding: 0 18px;
}
.card-price .details li {
    text-align: center;
    margin-bottom: 8px;
}
.card-price .buy-now {
    text-transform: uppercase;
}
.card-price table .price {
    font-size: 1.2em;
    font-weight: 700;
    text-align: left;
}
.card-price table .note {
    color: #666;
    font-size: 0.8em;
}

#modal-receive-payment .fa {
    font-size: 20px;
}

#modal-receive-payment .modal-payment-block {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
}

#modal-make-payment .fa {
    font-size: 20px;
}

#modal-make-payment .modal-payment-block {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
}

.payment-method-content label {
    /* background-color: #a2aab1 !important; */
    border: 1px solid #525456 !important;
    margin-bottom: 8px;
    margin-right: 8px;
}

.payment-method-content .badge {
    font-weight: bold;
    padding: 0px 0px;
    font-size: 21px;
}

.payment-file-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-bottom: 0;
}

.payment-file-content a {
    margin-top: 53px;
    font-size: 15px;
    font-weight: 800;
}

.payment-file-content input[type="file"] {
    width: 0;
    height: 0;
    z-index: -1;
    position: absolute;
    overflow: hidden;
    opacity: 0;
}

.payment-file-content label[for="file"] {
    margin-top: 25px;
    font-size: 15px;
    font-weight: 800;
    color: #337ab7;
    cursor: pointer;
}

.payment-file-content label[for="file"]:hover {
    color: #245f92;
}

.payment-file-content label[for="file-edit"] {
    margin-top: 25px;
    font-size: 15px;
    font-weight: 800;
    color: #337ab7;
    cursor: pointer;
}

.payment-file-content label[for="file-edit"]:hover {
    color: #245f92;
}

.payment-files {
    display: flex;
    margin-right: 10px;
    margin-top: 15px;
    width: 80%;
}

.payment-file-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 7px;
}

.payment-file-item i {
    color: #000000;
}

.financeiro-filtros-content {
    margin-bottom: 25px;
}

.financeiro-filter-card {
    background: #fff;
    border: 0.5px solid #e3e8ef;
    border-radius: 12px;
    margin-bottom: 16px;
    overflow: hidden;
}

.financeiro-filter-header {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 18px;
    border-bottom: 0.5px solid #e3e8ef;
}

.financeiro-filter-header i {
    color: #8a97a5;
    font-size: 13px;
}

.financeiro-filter-header-title {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #6b7a8d;
    margin: 0;
}

.financeiro-filter-body {
    padding: 18px;
}

.financeiro-filter-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 14px;
    align-items: end;
}

.financeiro-filter-grid.with-custom-dates {
    grid-template-columns: repeat(8, minmax(0, 1fr));
}

.financeiro-field label {
    display: block;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: #8a97a5;
    margin-bottom: 5px;
}

.financeiro-field input,
.financeiro-field select {
    width: 100%;
    min-width: 0;
    padding: 7px 10px;
    background: #f4f6f9;
    border: 1px solid #e3e8ef;
    border-radius: 8px;
    font-size: 13px;
    color: #2b3445;
    transition: border-color .2s, background .2s, box-shadow .2s;
    outline: none;
}
.financeiro-field .select2-container--default .select2-selection--single {
    background: #f4f6f9;
    border: 1px solid #e3e8ef;
    transition: border-color .2s, background .2s, box-shadow .2s;
}
.financeiro-field .select2-container--default .select2-selection--single .select2-selection__placeholder {
    color: #2b3445 !important;
}

.financeiro-field input:focus,
.financeiro-field select:focus,
.financeiro-field .select2-container--default .select2-selection--single:focus {
    border-color: #1abfb7;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(29, 158, 117, .08);
}

.financeiro-filter-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 18px;
    width: 260px;
}

.btn-financeiro-search {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 18px;
    background: #1abfb7;
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: background .2s;
}

.btn-financeiro-search:hover,
.btn-financeiro-search:focus {
    background: #178a63;
    color: #fff;
}

.btn-financeiro-search:disabled,
.btn-financeiro-search.is-disabled {
    background: #aeb8c3;
    color: #fff;
    cursor: not-allowed;
    opacity: .75;
}

.btn-financeiro-search.is-loading {
    background: #178a63;
    cursor: wait;
    opacity: 1;
}

.btn-financeiro-clear {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 16px;
    background: #f4f6f9;
    color: #6b7a8d;
    border: 1px solid #e3e8ef;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    text-decoration: none;
    transition: background .2s, color .2s;
}

.btn-financeiro-clear:hover,
.btn-financeiro-clear:focus {
    background: #e8ecf0;
    color: #2b3445;
    text-decoration: none;
}

@media (max-width: 1200px) {
    .financeiro-filter-grid,
    .financeiro-filter-grid.with-custom-dates {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    .financeiro-filter-grid,
    .financeiro-filter-grid.with-custom-dates {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 480px) {
    .financeiro-filter-grid,
    .financeiro-filter-grid.with-custom-dates {
        grid-template-columns: 1fr;
    }

    .financeiro-filter-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .btn-financeiro-search,
    .btn-financeiro-clear {
        justify-content: center;
        width: 100%;
    }
}

/* Hiding the checkbox, but allowing it to be focused */
.badgebox {
    opacity: 0;
}

.badgebox + .badge {
    /* Move the check mark away when unchecked */
    text-indent: -999999px;
    /* Makes the badge's width stay the same checked and unchecked */
    width: 18px;
}

.badgebox:focus + .badge {
    /* Set something to make the badge looks focused */
    /* This really depends on the application, in my case it was: */

    /* Adding a light border */
    box-shadow: inset 0px 0px 0px;
    /* Taking the difference out of the padding */
}

.badgebox:checked + .badge {
    /* Move the check mark back when checked */
    text-indent: 0;
    /* background-color: #446e92 !important; */
}

.dropzone {
    /* border: none !important; */
    border: 2px dashed rgba(0, 0, 0, 0.3) !important;
}

.financeiro-table-statistics-footer {
    display: flex;
    justify-content: space-between;
    padding: 40px;
    font-weight: 600;
}

@media screen and (max-width: 1140px) {
    .financeiro-table-statistics-footer {
        flex-direction: column;
        align-items: flex-start;
    }
}

.previstoo {
    display: flex;
    flex-direction: column;
}

.previstoo p {
    font-size: 18px;
}

/* .financeiro-table-statistics-footer {
    display: flex;
    justify-content: space-between;
    padding: 40px ;
} */

.financeiro-table-statistics-footer h4 {
    font-size: 13px;
}
.financeiro-table-statistics-footer h4 b {
    color: #c4a600;
}

@media only screen and (max-width: 1140px) {
    .financeiro-table-statistics-footer-content {
        width: 100% !important;
        padding: 0 !important;
    }
}

.financeiro-table-statistics-footer-content {
    width: 554px;
    padding: 0 85px;
    margin-right: 100px;
}

.financeiro-table-statistics-footer-values {
    display: flex;
    flex-direction: column;
}

.financeiro-statistics-footer-spend {
    width: 94px !important;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.justify-around {
    display: flex;
    justify-content: space-between;
}

.justify-around span {
    width: 125px;
}

.justify-around-underline {
    display: flex;
    justify-content: space-between;
}

.financeiro-resumo-card {
    background: #fff;
    border: 0.5px solid #e3e8ef;
    border-radius: 12px;
    margin: 18px 0 0;
    overflow: hidden;
}

.financeiro-resumo-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
    padding: 16px 18px;
    border-bottom: 0.5px solid #e3e8ef;
    background: #fbfcfe;
}

.financeiro-resumo-eyebrow,
.financeiro-resumo-section-title,
.financeiro-resumo-total span {
    display: block;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: #8a97a5;
}

.financeiro-resumo-header h4 {
    margin: 2px 0 0;
    font-size: 16px;
    font-weight: 700;
    color: #2b3445;
}

.financeiro-resumo-total {
    text-align: right;
}

.financeiro-resumo-total strong {
    display: block;
    margin-top: 3px;
    font-size: 20px;
    color: #1abfb7;
}

.financeiro-resumo-body {
    display: grid;
    grid-template-columns: 1fr 1.4fr 1.1fr;
}

.financeiro-resumo-section {
    padding: 18px;
}

.financeiro-resumo-section + .financeiro-resumo-section {
    border-left: 0.5px solid #e3e8ef;
}

.financeiro-resumo-section-title {
    margin-bottom: 12px;
}

.financeiro-resumo-line {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 8px 0;
    font-size: 13px;
    color: #6b7a8d;
}

.financeiro-resumo-line + .financeiro-resumo-line {
    border-top: 1px solid #f0f3f7;
}

.financeiro-resumo-line strong {
    color: #2b3445;
    font-size: 13px;
    white-space: nowrap;
}

.financeiro-resumo-positive {
    color: #1abfb7 !important;
}

.financeiro-resumo-negative {
    color: #E24B4A !important;
}

.financeiro-resumo-net {
    margin-top: 8px;
    padding-top: 12px;
    border-top: 1px solid #d8e7df !important;
    font-weight: 700;
}

.financeiro-resumo-net strong {
    color: #1abfb7;
    font-size: 16px;
}

.financeiro-resumo-empty {
    padding: 8px 0;
    font-size: 13px;
    color: #8a97a5;
}

.financeiro-receita-modal {
    border: 0;
    border-radius: 12px;
    overflow: hidden;
}

.financeiro-receita-form {
    margin: 0;
}

.financeiro-receita-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 18px 22px;
    border-bottom: 0.5px solid #e3e8ef;
    background: #fbfcfe;
}

.financeiro-receita-eyebrow,
.financeiro-receita-section-title {
    display: block;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: #8a97a5;
}

.financeiro-receita-header h4 {
    margin: 2px 0 0;
    font-size: 18px;
    font-weight: 700;
    color: #2b3445;
}

.financeiro-receita-close {
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 8px;
    background: #f0f3f7;
    color: #6b7a8d;
    font-size: 24px;
    line-height: 1;
}

.financeiro-receita-body {
    padding: 20px 5px;
    background: #fff;
}

.financeiro-receita-section + .financeiro-receita-section {
    margin-top: 22px;
    padding-top: 20px;
    border-top: 0.5px solid #e3e8ef;
}

.financeiro-receita-section-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
}

.financeiro-receita-grid {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 14px;
    margin-top: 14px;
}

.financeiro-receita-field {
    min-width: 0;
}

.financeiro-receita-field.span-3 { grid-column: span 3; }
.financeiro-receita-field.span-4 { grid-column: span 4; }
.financeiro-receita-field.span-5 { grid-column: span 5; }
.financeiro-receita-field.span-6 { grid-column: span 6; }
.financeiro-receita-field.span-7 { grid-column: span 7; }

.financeiro-receita-field label {
    display: block;
    font-size: 12px;
    color: #646464;
    margin-bottom: 6px;
}

.financeiro-receita-field input,
.financeiro-receita-field select,
.financeiro-receita-field .select2-container .select2-selection--single {
    width: 100% !important;
    min-height: 36px;
    border: 1px solid #c0c4ca !important;
    border-radius: 8px !important;
    color: #2b3445;
    font-size: 13px;
    outline: none;
}
.financeiro-receita-field .select2-search--dropdown{
    border-top: 1px solid #aeaeae;
}

.financeiro-receita-field input,
.financeiro-receita-field select {
    padding: 7px 10px;
}

.financeiro-receita-field input:focus,
.financeiro-receita-field select:focus {
    border-color: #1abfb7 !important;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(29, 158, 117, .08);
}

.financeiro-receita-field.has-error input,
.financeiro-receita-field.has-error select,
.financeiro-receita-field.has-error .financeiro-money-input,
.financeiro-receita-field.has-error .select2-container .select2-selection--single {
    border-color: #E24B4A !important;
}

.financeiro-required-message {
    display: block;
    margin-top: 5px;
    color: #E24B4A;
    font-size: 11px;
    font-weight: 700;
}

.financeiro-validation-alert,
#receita-recebimentos-alert.financeiro-validation-alert {
    display: block;
    width: 100%;
    margin-top: 18px;
    padding: 18px 20px;
    background: #fff1f3 !important;
    border: 0;
    border-left: 6px solid #ff3f62;
    border-radius: 8px;
    color: #26263c;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.45;
}

.financeiro-money-input {
    display: flex;
    align-items: center;
    border: 1px solid #e3e8ef;
    border-radius: 8px;
    overflow: hidden;
}

.financeiro-money-input span {
    padding: 0 10px;
    color: #8a97a5;
    font-size: 12px;
    font-weight: 700;
}

.financeiro-money-input input {
    border: 0 !important;
    border-left: 1px solid #e3e8ef !important;
    border-radius: 0 !important;
    background: transparent;
}

.financeiro-recibo-modal {
    box-shadow: 0 24px 70px rgba(30, 41, 59, .22);
}

.financeiro-recibo-header {
    padding: 18px 22px;
}

.financeiro-recibo-body {
    padding: 20px 22px 18px;
}

.financeiro-recibo-section + .financeiro-recibo-section {
    margin-top: 18px;
    padding-top: 18px;
    border-top: 0.5px solid #e3e8ef;
}

.financeiro-recibo-options {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 12px;
}

.financeiro-recibo-option {
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: 11px;
    min-height: 82px;
    margin: 0;
    padding: 14px;
    border: 1px solid #dbe4ee;
    border-radius: 10px;
    background: #fbfcfe;
    cursor: pointer;
    transition: border-color .16s ease, box-shadow .16s ease, background .16s ease, transform .16s ease;
}

.financeiro-recibo-option:hover {
    border-color: #b9e5d6;
    background: #ffffff;
    box-shadow: 0 10px 26px rgba(31, 41, 55, .08);
    transform: translateY(-1px);
}

.financeiro-recibo-option input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.financeiro-recibo-radio {
    position: relative;
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
    margin-top: 2px;
    border: 2px solid #b8c3d1;
    border-radius: 50%;
    background: #fff;
}

.financeiro-recibo-radio::after {
    content: "";
    position: absolute;
    top: 3px;
    left: 3px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #1abfb7;
    opacity: 0;
    transform: scale(.6);
    transition: opacity .16s ease, transform .16s ease;
}

.financeiro-recibo-option input:checked + .financeiro-recibo-radio {
    border-color: #1abfb7;
}

.financeiro-recibo-option input:checked + .financeiro-recibo-radio::after {
    opacity: 1;
    transform: scale(1);
}

.financeiro-recibo-option.is-selected,
.financeiro-recibo-option:has(input:checked) {
    border-color: #9fe0c8;
    background: #f1fbf7;
    box-shadow: 0 0 0 3px rgba(29, 158, 117, .08);
}

.financeiro-recibo-option strong {
    display: block;
    color: #2b3445;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.25;
}

.financeiro-recibo-option small {
    display: block;
    margin-top: 4px;
    color: #7c8898;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.35;
}

.financeiro-recibo-footer {
    padding: 14px 22px 18px;
}

.financeiro-recibo-footer .btn-financeiro-search {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
}

@media (max-width: 767px) {
    .financeiro-recibo-options {
        grid-template-columns: 1fr;
    }

    .financeiro-recibo-modal .financeiro-receita-field.span-5,
    .financeiro-recibo-modal .financeiro-receita-field.span-7 {
        grid-column: span 12;
    }
}

.financeiro-attachment-section {
    padding-bottom: 2px;
}

.financeiro-attachment-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
}

.financeiro-attachment-header p {
    margin: 5px 0 0;
    color: #7c8898;
    font-size: 12px;
}

.financeiro-attachment-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 36px;
    padding: 8px 12px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap;
}

.financeiro-attachment-toggle.is-open {
    background: #eaf7f2;
    border-color: #b7e3d3;
    color: #1abfb7;
}

.financeiro-attachment-panel {
    margin-top: 14px;
    padding: 14px;
    background: #fbfcfe;
    border: 0.5px solid #e3e8ef;
    border-radius: 10px;
}

.financeiro-parcelas-preview-section {
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid #e7edf5;
}

.financeiro-parcelas-toggle,
.financeiro-receita-parcelas-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 36px;
    padding: 8px 12px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap;
}

.financeiro-parcelas-toggle.is-open,
.financeiro-receita-parcelas-toggle.is-open {
    background: #eef6ff;
    border-color: #c6def8;
    color: #2f7ed8;
}

.financeiro-parcelas-toggle:disabled,
.financeiro-parcelas-toggle.is-disabled {
    opacity: .55;
    cursor: not-allowed;
}

.financeiro-parcelas-preview-panel {
    margin-top: 14px;
    padding: 14px;
    background: #fbfcfe;
    border: 0.5px solid #e3e8ef;
    border-radius: 10px;
}

.financeiro-receita-parcelas-panel {
    margin-top: 12px;
    padding: 12px;
    background: #fff;
    border: 0.5px solid #e3e8ef;
    border-radius: 10px;
}

.financeiro-parcelas-preview-summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
    color: #738096;
    font-size: 12px;
    font-weight: 800;
}

.financeiro-parcelas-preview-summary strong {
    color: #253044;
}

.financeiro-parcelas-preview-summary span:last-child strong {
    margin-left: 6px;
    color: #1abfb7;
}

.financeiro-parcelas-preview-table-wrap {
    max-height: 260px;
}

.financeiro-parcelas-preview-empty {
    padding: 18px !important;
    color: #7c8898 !important;
    text-align: center;
}

.financeiro-dropzone {
    min-height: 116px;
    padding: 18px;
    background: #fff;
    border: 1px dashed #b7c4d4;
    border-radius: 10px;
}

.financeiro-dropzone .dz-message {
    margin: 12px 0;
}

.financeiro-dropzone .dz-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    margin-bottom: 8px;
    border-radius: 8px;
    font-weight: 700;
}

.financeiro-edit-file-dropzone .dz-button {
    cursor: pointer;
}

.financeiro-dropzone small {
    display: block;
    color: #8a97a5;
    font-size: 12px;
}

.financeiro-file-picker {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 58px;
    padding: 12px 14px;
    margin: 0;
    background: #fff;
    border: 1px dashed #b7c4d4;
    border-radius: 10px;
    color: #2b3445;
    cursor: pointer;
}

.financeiro-file-picker i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: #eaf7f2;
    border-radius: 8px;
    color: #1abfb7;
}

.financeiro-file-picker span {
    display: block;
    font-size: 13px;
    font-weight: 700;
}

.financeiro-file-picker small {
    display: block;
    margin-top: 2px;
    color: #8a97a5;
    font-size: 11px;
}

.financeiro-file-input {
    display: none !important;
}

.financeiro-attachment-current,
.financeiro-attachment-preview {
    margin-bottom: 10px;
}

.financeiro-attachment-current-wrap {
    margin-top: 12px;
}

.financeiro-attachment-current:empty {
    display: none;
}

.financeiro-attachment-preview {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: 10px;
}

.financeiro-file-preview {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    min-width: 0;
    padding: 8px;
    background: #fff;
    border: 0.5px solid #e3e8ef;
    border-radius: 8px;
}

.financeiro-file-preview-thumb {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    overflow: hidden;
    background: #f0f3f7;
    border-radius: 7px;
    color: #6b7a8d;
    font-size: 18px;
    cursor: pointer;
}

.financeiro-file-preview-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.financeiro-file-preview-info {
    min-width: 0;
}

.financeiro-file-preview-info strong,
.financeiro-file-preview-info span {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.financeiro-file-preview-info strong {
    color: #2b3445;
    font-size: 12px;
    font-weight: 700;
}

.financeiro-file-preview-info span {
    margin-top: 2px;
    color: #8a97a5;
    font-size: 11px;
}

.financeiro-file-preview.payment-file-item {
    grid-template-columns: 46px minmax(0, 1fr) 30px;
}

.financeiro-file-preview-action {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.financeiro-file-preview-action a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    color: #e34343;
    background: #fff1f1;
    border-radius: 7px;
}

.financeiro-file-preview-action a:hover {
    color: #c82f2f;
    background: #ffe4e4;
}

.financeiro-preview-modal {
    overflow: hidden;
    border: 0;
    border-radius: 10px;
}

.financeiro-preview-body {
    padding: 16px;
    background: #f7f9fc;
}

.financeiro-preview-body img {
    display: block;
    width: 100%;
    max-height: 72vh;
    object-fit: contain;
    background: #fff;
    border-radius: 8px;
}

.financeiro-recebimentos-list {
    display: grid;
    gap: 10px;
}

.financeiro-receita-check {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 36px;
    padding: 8px 12px;
    margin: 0;
    background: #eaf7f2;
    border: 1px solid #c0e8d8;
    border-radius: 8px;
    color: #1abfb7;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
}

.financeiro-receita-check input {
    margin: 0;
}

.financeiro-recebimento-row {
    display: grid;
    grid-template-columns: minmax(140px, .9fr) minmax(130px, .9fr) minmax(120px, .8fr) minmax(100px, .6fr) minmax(100px, .9fr) minmax(120px, max-content) 34px;
    gap: 10px;
    align-items: end;
    padding: 12px;
    background: #fbfcfe;
    border: 0.5px solid #e3e8ef;
    border-radius: 10px;
}

.financeiro-recebimento-row-edit {
    grid-template-columns: minmax(140px, .9fr) minmax(130px, .9fr) minmax(120px, .8fr) minmax(100px, .6fr) minmax(100px, .8fr) minmax(120px, max-content);
}

.financeiro-recebimento-remove {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 36px;
    border: 1px solid #f5c2c7;
    border-radius: 8px;
    background: #fdeaea;
    color: #E24B4A;
}

.financeiro-recebimento-remove:disabled {
    background: #f0f3f7;
    border-color: #e3e8ef;
    color: #a8b2c1;
    cursor: not-allowed;
}

.financeiro-recebimentos-total {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 12px;
    margin-top: 12px;
    font-size: 13px;
    color: #6b7a8d;
}

.financeiro-recebimentos-total strong {
    font-size: 18px;
    color: #1abfb7;
}

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

.financeiro-payment-summary > div {
    min-width: 0;
    padding: 10px 12px;
    background: #fbfcfe;
    border: 0.5px solid #e3e8ef;
    border-radius: 8px;
}

.financeiro-payment-summary span {
    display: block;
    margin-bottom: 4px;
    color: #8a97a5;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.financeiro-payment-summary strong {
    display: block;
    overflow: hidden;
    color: #2b3445;
    font-size: 14px;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.financeiro-payment-compact-header {
    padding: 14px 18px;
}

.financeiro-payment-compact-header h4 {
    font-size: 16px;
}

.financeiro-payment-compact-section {
    padding: 14px 18px;
}

.financeiro-payment-compact-section + .financeiro-payment-compact-section {
    margin-top: 0;
    padding-top: 14px;
}

.financeiro-receita-footer {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding: 16px 22px;
    border-top: 0.5px solid #e3e8ef;
    background: #fbfcfe;
}

.financeiro-delete-modal {
    box-shadow: 0 18px 60px rgba(32, 41, 57, .18);
}

.financeiro-delete-header {
    background: #fff;
}

.financeiro-delete-body {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 14px;
    padding: 22px;
    background: #fff;
    border-bottom: 0.5px solid #e3e8ef;
}

.financeiro-delete-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    background: #fff1f3;
    border: 1px solid #ffd1d9;
    border-radius: 10px;
    color: #E24B4A;
    font-size: 18px;
}

.financeiro-cancel-icon {
    background: #fff1f1;
    border-color: #ffc9c9;
    color: #E24B4A;
}

.financeiro-cancel-summary {
    margin-top: 14px;
    padding: 12px 14px;
    background: #fbfcfe;
    border: 0.5px solid #e3e8ef;
    border-radius: 8px;
}

.financeiro-cancel-summary span,
.financeiro-cancel-summary strong {
    display: block;
}

.financeiro-cancel-summary span {
    color: #8a97a5;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.financeiro-cancel-summary strong {
    margin-top: 4px;
    color: #2b3445;
    font-size: 13px;
}

.financeiro-delete-body h5 {
    margin: 0 0 6px;
    color: #2b3445;
    font-size: 16px;
    font-weight: 700;
}

.financeiro-delete-body p {
    margin: 0;
    color: #6b7a8d;
    font-size: 13px;
    line-height: 1.55;
}

.financeiro-delete-warning {
    margin-top: 14px;
    padding: 12px 14px;
    background: #fff7e8;
    border-left: 4px solid #e6a817;
    border-radius: 8px;
}

.financeiro-delete-warning strong,
.financeiro-delete-warning span {
    display: block;
}

.financeiro-delete-warning strong {
    color: #7a5310;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.financeiro-delete-warning span {
    margin-top: 3px;
    color: #6b5a34;
    font-size: 12px;
}

.financeiro-delete-footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 8px;
    padding: 16px 22px;
    background: #fbfcfe;
}

.financeiro-delete-footer form {
    margin: 0;
}

.btn-financeiro-delete,
.btn-financeiro-delete-strong {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 36px;
    padding: 8px 14px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 700;
    transition: background .2s, color .2s, border-color .2s;
}

.btn-financeiro-delete {
    background: #fff;
    border: 1px solid #f3b8bc;
    color: #E24B4A;
}

.btn-financeiro-delete:hover,
.btn-financeiro-delete:focus {
    background: #fff1f3;
    color: #c93534;
}

.btn-financeiro-delete-strong {
    background: #E24B4A;
    border: 1px solid #E24B4A;
    color: #fff;
}

.btn-financeiro-delete-strong:hover,
.btn-financeiro-delete-strong:focus {
    background: #c93534;
    border-color: #c93534;
    color: #fff;
}

@media (max-width: 900px) {
    .financeiro-receita-field.span-3,
    .financeiro-receita-field.span-4,
    .financeiro-receita-field.span-6 {
        grid-column: span 12;
    }

    .financeiro-recebimento-row {
        grid-template-columns: 1fr;
    }

    #modal-despesa .financeiro-receita-section > .row.d-flex,
    #modal-despesa-edit .financeiro-receita-section > .row.d-flex {
        display: flex !important;
        align-items: stretch !important;
        flex-direction: column;
        gap: 14px;
    }

    #modal-despesa .financeiro-receita-section > .row.d-flex > [class*="col-"],
    #modal-despesa-edit .financeiro-receita-section > .row.d-flex > [class*="col-"] {
        width: 100%;
        max-width: 100%;
        flex: none;
    }

    #modal-despesa .financeiro-despesa-condicao-row,
    #modal-despesa-edit .financeiro-despesa-condicao-row {
        grid-template-columns: 1fr !important;
    }

    #modal-despesa .financeiro-despesa-condicao-row .financeiro-receita-check,
    #modal-despesa-edit .financeiro-despesa-condicao-row .financeiro-receita-check {
        width: 100%;
    }

    .financeiro-recebimento-remove {
        width: 100%;
    }

    .financeiro-payment-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .financeiro-attachment-header {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 992px) {
    .financeiro-resumo-body {
        grid-template-columns: 1fr;
    }

    .financeiro-resumo-section + .financeiro-resumo-section {
        border-left: 0;
        border-top: 0.5px solid #e3e8ef;
    }
}

@media (max-width: 560px) {
    .financeiro-resumo-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .financeiro-resumo-total {
        text-align: left;
    }

    .financeiro-resumo-line {
        align-items: flex-start;
        flex-direction: column;
        gap: 4px;
    }
}

.hr-custom {
    margin-top: 5px;
    margin-bottom: 5px;
    border: 0;
    border-top: 1px solid #a09e9e;
    width: 57%;
    margin-left: 215px;
}

.relatorio-table-content {
    font-size: 10px;
}

.logo-clinica {
    position: absolute;
    width: 200px;
    right: 49px;
    top: 1px;
}

@media only screen and (max-width: 1199px) {
    .logo-clinica {
        position: relative;
        right: auto;
    }
}

.clinica-logo-change {
    position: absolute;
    top: 50%;
    left: 50%;
    text-align: center;
    transform: translate(-50%, -50%);
    color: #ffff;
    font-weight: 800;
    background-color: #635f5fdb;
    font-size: 18px;
    cursor: pointer;
    border-radius: 5px;
    padding: 5px;
}

.bootstrap-touchspin .bootstrap-touchspin-prefix {
    border-radius: 5px 0 0 5px;
}
.bootstrap-touchspin input {
    border-radius: 0 5px 5px 0;
}
input.form-control {
    border-radius: 5px;
}
select.form-control {
    border-radius: 5px !important;
}
/*****************LOGIN E REGISTER***********/

.wrapper-page.index {
    width: 90%;
    max-width: 720px;
    margin: 3% auto;
}
.wrapper-page.login,
.wrapper-page.password.request,
.wrapper-page.password.reset {
    max-width: 420px;
    margin: 5% auto;
}
/************Cadastro Paciente***************/
@media only screen and (min-width: 728px) {
    .form-pl {
        margin-left: 20px;
    }
}
.form-separador {
    margin-top: -16px !important;
    margin-bottom: 10px !important;
}

@media (max-width: 767px) {
    .wrapper-page .row .form-control {
        margin-bottom: 10px;
    }
}
.img-paciente img {
    margin: auto;
    height: 150px;
    border-radius: 50%;
    object-fit: cover;
    object-position: center center;
    width: 150px;
}
.paciente-logo-change {
    position: absolute;
    top: 41%;
    line-height: 145px;
    border-radius: 50%;
    width: 150px;
    height: 150px;
    text-align: center;
    transform: translate(-50%, -50%);
    color: #ffff;
    font-weight: 800;
    background-color: #1abfb77a;
    font-size: 18px;
    cursor: pointer;
    padding: 5px;
}
.bg-picture {
    margin-top: -76px;
}
.bg-picture > .bg-picture-overlay {
    background-image: linear-gradient(
        to bottom,
        rgba(255, 255, 255, 0) 0,
        rgb(15 130 130 / 78%) 100%
    );
}
.profile-info-name .thumb-lg {
    height: 140px;
    width: 140px;
    object-fit: cover;
    object-position: center;
}
/** Consulta Documentos**/
.consulta-docs .mini-stat .mini-stat-icon {
    display: block;
    margin: auto;
    float: none;
    width: 130px;
    height: 130px;
}
.consulta-docs .mini-stat .mini-stat-icon img {
    width: 130px;
    height: 130px;
    object-fit: cover;
    object-position: center;
}
.consulta-docs .mini-stat .mini-stat-info span.name {
    font-size: 13px;
}
.consulta-docs .mini-stat .mini-stat-info {
    width: 100%;
    height: 60px;
}
.consulta-docs .mini-stat .mini-stat-info .upload-data {
    font-size: 12px;
}
.nav-tabs .consulta-tab {
    line-height: 17px !important;
    padding-bottom: 4px;
    padding-top: 10px;
    text-align: center;
}
/****ASSINATURA***********/
.price-features li {
    margin: 0 35px;
    padding: 10px 0px !important;
}
/******DASHBOARD************/
.page-dashboard .panel .panel-body ol li {
    font-size: 12px;
}
.top-bar-user {
    margin-left: 10px;
    margin-right: 5px;
    line-height: 1.3;
}
.dropdown-toggle.profile {
    display: flex;
    margin-top: 10px;
}
.text-light {
    color: #fff;
}
.dropdown-clinica-sidebar {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    font-size: 12px !important;
    margin-top: 5px;
}

/***************CONSULTAS****************/
.nav-consultas .nav-pills > li.active > a,
.nav-consultas .nav-pills > li.active > a:focus,
.nav-consultas .nav-pills > li.active > a:hover {
    background-color: #29c3bb;
    color: #fff;
}
.nav-consultas .nav > li > a {
    line-height: 28px;
    color: #525252;
}
.nav-consultas {
    padding: 15px 0;
}
.content-consultas {
    padding: 10px;
    padding-top: 20px;
    padding-bottom: 80px;
}

/**********TAB TIPO DOCUMENTOS**************/
.nav.nav-tabs#tipo-documento-tab > li > a {
    font-weight: bold;
    color: #fff !important;
    background-color: #c3c2c2;
    border-radius: 5px;
    padding: 7px;
    margin: 0;
    line-height: 20px;
    margin: 0 3px;
}
.nav.nav-tabs#tipo-documento-tab > li.active > a {
    background-color: #29c3bb;
    color: #fff !important;
}
.nav.nav-tabs#tipo-documento-tab {
    box-shadow: none;
}
/************/
.consulta-header-buttons {
    display: flex;
    flex-direction: column;
    height: 151px;
    justify-content: center;
}
.btn-outline-info {
    color: #29b6f6;
    border-color: #29b6f6;
}
.btn-outline-info:hover {
    color: #fff;
    background-color: #29b6f6;
    border-color: #29b6f6;
}
/*receita*/
.prescricao-layout {
    display: table;
}
.receita-b-1-solid {
    border: 1px solid #5b5b5b;
    font-size: 11px;
}
.border-1-solid {
    border: 1px solid #5b5b5b !important;
    font-size: 11px;
}
.rounded-corners {
    border-radius: 10px; /* Define bordas redondas */
}


/****AJUSTE RESPONSIVE****/

/*Responsive Celular*/
@media (max-width: 768px) {
    #wrapper.enlarged .left.side-menu #sidebar-menu > ul > li > a {
        padding-left: 0px;
        display: none;
    }
    #wrapper.enlarged .left.side-menu {
        width: 0;
    }
    #wrapper.enlarged .content-page {
        margin-left: 0;
    }

    .container {
        padding-right: 3px;
        padding-left: 0px;
    }

    .marginmob {
        margin-top: 20px;
        margin-bottom: 20px;
    }

    .nav.nav-tabs + .tab-content,
    .tabs-vertical-env .tab-content {
        padding: 10px;
    }

    .note-editor .note-toolbar {
        height: 115px;
    }

    .topbar .topbar-left {
        width: 0px;
    }

    .logo {
        display: none;
    }

    .panel .panel-body {
        padding: 10px !important;
    }

    .table-responsive {
        border: none;
    }

    .financeiro-empty td {
        text-align: center;
        padding: 100px 0 100px 0 !important;
    }
    .oculos-mob,
    .lente-mob {
        border: 1px solid #dedede;
        border-radius: 3px;
        margin: 15px 0 !important;
        padding-bottom: 5px;
        height: 220px;
    }
    .oculos-mob.adicao,
    .lente-mob.adicao {
        height: 86px;
    }
    .oculos-mob .col-xs-6,
    .lente-mob .col-xs-6 {
        margin-bottom: 5px;
    }
    .oculos-mob .prescricao-card-label {
        font-weight: 600;
        display: flex;
        border-bottom: 1px solid #dedede;
        margin-bottom: 10px;
        background: #f8f8f8;
        padding: 5px;
    }
    .btn-preencherCamporx {
        margin-top: -33px;
    }
    .prescricao-layout .label-lente {
        margin-left: 10px;
    }
    .prescricao-layout .proximas-consultas {
        margin-left: 10px;
    }
    .prescricao-layout .obs {
        margin-left: 10px;
    }
    .nav.nav-tabs > li > a {
        font-size: 12px;
    }
    .fc-toolbar .fc-center {
        margin-top: 20px;
    }
    .bg-picture {
        margin-top: -132px;
    }
    .content-page {
        margin-left: 0;
    }
    /*******FUll Calendar Mobile***********/
    .fc button {
        font-size: 12px !important;
    }
} /** FIM resposive Celular **/
@media (max-width: 1024px) {
    .oculos-mob,
    .lente-mob {
        border: 1px solid #dedede;
        border-radius: 3px;
        margin: 15px 0 !important;
        padding-bottom: 5px;
        height: 220px;
    }
    .oculos-mob .col-xs-6,
    .lente-mob .col-xs-6 {
        margin-bottom: 5px;
    }
    .prescricao-layout-lente .oculos-mob {
        height: 170px !important;
    }
}

/**Responsive Desktop**/
@media (min-width: 768px) {
    .financeiro-empty td {
        text-align: center;
        padding: 100px !important;
    }
    .table-responsive {
        overflow-x: auto;
    }
    .prescricao-card .oculos-desk {
        border: 1px solid #dedede;
        display: flex;
        justify-content: center;
        border-radius: 3px;
        align-items: center;
    }
    .prescricao-card .col-md-2,
    .prescricao-card .col-md-3 {
        border-right: 1px solid #dedede;
        padding-top: 3px;
        padding-bottom: 3px;
    }
    .prescricao-card .oculos-desk .prescricao-card-header .col-md-2,
    .prescricao-card .oculos-desk .prescricao-card-header .col-md-3 {
        padding: 8px;
        font-weight: 600;
    }
    .prescricao-card-label {
        font-weight: 600;
        width: 100px;
        text-align: center;
        padding: 0 !important;
        margin: 0 !important;
    }
    .oculos-desk .bl-1 {
        border-left: 1px solid #dedede;
    }
    .prescricao-layout .label-lente,
    .prescricao-layout-lente .label-lente {
        text-align: end;
        width: 105px;
    }
    .prescricao-layout .proximas-consultas,
    .prescricao-layout-lente .proximas-consultas {
        width: 110px;
        text-align: end;
    }
    .prescricao-layout .obs,
    .prescricao-layout-lente .obs {
        width: 110px;
        text-align: end;
    }
    .prescricao-layout-lente {
        display: table;
        max-width: 700px;
        margin: 0 auto;
    }
}

.custom-Switch > input[type="checkbox"] {
    display: none;
}

.custom-Switch > label {
    cursor: pointer;
    height: 0px;
    position: relative;
    width: 40px;
}

.custom-Switch > label::before {
    background: rgb(0, 0, 0);
    box-shadow: inset 0px 0px 10px rgba(0, 0, 0, 0.5);
    border-radius: 8px;
    content: "";
    height: 16px;
    margin-top: -8px;
    position: absolute;
    opacity: 0.3;
    transition: all 0.4s ease-in-out;
    width: 40px;
}
.custom-Switch > label::after {
    background: rgb(255, 255, 255);
    border-radius: 16px;
    box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.3);
    content: "";
    height: 24px;
    left: -4px;
    margin-top: -8px;
    position: absolute;
    top: -4px;
    transition: all 0.3s ease-in-out;
    width: 24px;
}
.custom-Switch > input[type="checkbox"]:checked + label::before {
    background: inherit;
    opacity: 0.5;
}
.custom-Switch > input[type="checkbox"]:checked + label::after {
    background: inherit;
    left: 20px;
}
.isblocked a {
    color: #949494;
}

.right-bar {
    background-color: #fff;
    -webkit-box-shadow: 0 0 24px 0 rgba(0, 0, 0, 0.06),
        0 1px 0 0 rgba(0, 0, 0, 0.02);
    box-shadow: 0 0 24px 0 rgba(0, 0, 0, 0.06), 0 1px 0 0 rgba(0, 0, 0, 0.02);
    display: block;
    position: fixed;
    -webkit-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
    width: 300px;
    z-index: 9999 !important;
    float: right !important;
    right: -310px;
    top: 0;
    bottom: 0;
}

.right-bar .rightbar-title {
    background-color: #317eeb;
    padding: 21px;
    color: #fff;
    height: 53px;
}

.right-bar .right-bar-toggle {
    background-color: #444c54;
    height: 24px;
    width: 24px;
    line-height: 24px;
    color: #f5f5f5;
    text-align: center;
    border-radius: 50%;
    margin-top: -2px;
}

.right-bar .right-bar-toggle:hover {
    background-color: #4b545c;
}

.right-bar .user-box {
    padding: 25px;
    text-align: center;
}

.right-bar .user-box .user-img {
    position: relative;
    height: 64px;
    width: 64px;
    margin: 0 auto 15px auto;
}

.right-bar .user-box .user-img .user-edit {
    position: absolute;
    right: -5px;
    bottom: 0;
    height: 24px;
    width: 24px;
    background-color: #fff;
    line-height: 24px;
    border-radius: 50%;
    -webkit-box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175);
    box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175);
}

.right-bar .user-box h5 {
    margin-bottom: 2px;
}

.right-bar .user-box h5 a {
    color: #343a40;
}

.rightbar-overlay {
    background-color: rgba(52, 58, 64, 0.55);
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    display: none;
    z-index: 999 !important;
    -webkit-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
}

.right-bar-enabled .right-bar {
    right: 0;
}

.right-bar-enabled .rightbar-overlay {
    display: block;
}

@media (max-width: 767.98px) {
    .right-bar {
        overflow: auto;
    }

    .right-bar .slimscroll-menu {
        height: auto !important;
    }
}
.otica-cadastro .banner-acesso{
    background-color: #f8f9fa; 
    display: flex; 
    gap: 15px;
}
.otica-cadastro .banner-acesso .icon-key{
    background: #13b9b0;
    color: #FFF;
    font-size: 19px;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.btn-outline-primary {
    color: #1e88e5;
    background-color: transparent;
    border: 1px solid #1e88e5;
}
.btn-outline-primary:hover,
.btn-outline-primary:focus {
    color: #fff;
    background-color: #1e88e5;
    border-color: #1e88e5;
}

.btn-outline-success {
    color: #1abfb7;
    background-color: transparent;
    border: 1px solid #1abfb7;
}
.btn-outline-success:hover,
.btn-outline-success:focus {
    color: #fff;
    background-color: #1abfb7;
    border-color: #1abfb7;
}

.btn-outline-info {
    color: #29b6f6;
    background-color: transparent;
    border: 1px solid #29b6f6;
}
.btn-outline-info:hover,
.btn-outline-info:focus {
    color: #fff;
    background-color: #29b6f6;
    border-color: #29b6f6;
}

.btn-outline-warning {
    color: #ffd740;
    background-color: transparent;
    border: 1px solid #ffd740;
}
.btn-outline-warning:hover,
.btn-outline-warning:focus {
    color: #333;
    background-color: #ffd740;
    border-color: #ffd740;
}

.btn-outline-danger {
    color: #ef5350;
    background-color: transparent;
    border: 1px solid #ef5350;
}
.btn-outline-danger:hover,
.btn-outline-danger:focus {
    color: #fff;
    background-color: #ef5350;
    border-color: #ef5350;
}

.btn-outline-inverse {
    color: #212121;
    background-color: transparent;
    border: 1px solid #212121;
}
.btn-outline-inverse:hover,
.btn-outline-inverse:focus {
    color: #fff;
    background-color: #212121;
    border-color: #212121;
}

.btn-outline-purple {
    color: #7e57c2;
    background-color: transparent;
    border: 1px solid #7e57c2;
}
.btn-outline-purple:hover,
.btn-outline-purple:focus {
    color: #fff;
    background-color: #7e57c2;
    border-color: #7e57c2;
}
/* Customização para a pagina de treinamento */
.welcome-training-card {
        padding: 28px;
        border-radius: 16px;
        margin-bottom: 25px;
        color: #fff;
        background: linear-gradient(135deg, #1dd0c7 0%, #047b75 100%);
        box-shadow: 0 12px 28px rgba(0, 0, 0, .12);
}

.welcome-training-card h3,
.welcome-training-card p {
    color: #fff;
}

.training-video-link {
    display: block;
    text-decoration: none !important;
    margin-bottom: 25px;
}

.training-video-thumb {
    position: relative;
    min-height: 220px;
    border-radius: 14px;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .12);
}

.training-video-thumb::before {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .50);
}

.training-video-play {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 2;
    transform: translate(-50%, -50%);
    width: 72px;
    height: 72px;
    border-radius: 50%;
    border: 2px solid rgba(255,255,255,.95);
    background: rgba(255,255,255,.14);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 28px;
}

.training-video-info {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    padding: 18px;
    color: #fff;
}

.training-video-info h4,
.training-video-info p {
    color: #fff;
    margin: 0;
}

.training-video-info p {
    margin-top: 6px;
    opacity: .92;
}
.training-video-play:hover{
    background: rgb(255 255 255);
    color: #0a958e;
}
/* ── Card base ─────────────────────────────── */
.proc-card {
    background: #fff;
    border: 0.5px solid #e0e0e0;
    border-radius: 12px;
    padding: 24px 20px 16px;
    margin-bottom: 20px;
    box-shadow: 0 1px 4px rgba(0,0,0,.04);
}
.proc-card-header {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
    padding-bottom: 12px;
    border-bottom: 1px solid #f0f0f0;
}
.proc-card-dot {
    width: 9px; height: 9px;
    border-radius: 50%;
    background: #1bb99a;
    flex-shrink: 0;
}
.proc-card-title {
    font-size: 13px;
    font-weight: 700;
    color: #444;
    letter-spacing: .03em;
    text-transform: uppercase;
    margin: 0;
}

/* ── Labels ────────────────────────────────── */
.proc-label {
    font-size: 12px;
    color: #6b6a6a;
    margin-bottom: 5px;
    display: block;
}

/* ── Inputs ────────────────────────────────── */
.proc-card .form-control,
.proc-card .proc-input {
    background: #f7f8fa;
    border: 1px solid #e2e5ea;
    border-radius: 7px;
    font-size: 13px;
    color: #333;
    transition: border-color .2s, box-shadow .2s;
    height: 38px;
}
.proc-card .form-control:focus,
.proc-card .proc-input:focus {
    border-color: #1bb99a;
    box-shadow: 0 0 0 3px rgba(27,185,154,.12);
    background: #fff;
    outline: none;
}
.proc-card textarea.form-control {
    height: auto;
    min-height: 80px;
}

/* ── Input group integrado ──────────────────── */
.proc-input-group {
    display: flex;
    border-radius: 7px;
    overflow: hidden;
    border: 1px solid #e2e5ea;
    transition: border-color .2s, box-shadow .2s;
    background: #f7f8fa;
}
.proc-input-group:focus-within {
    border-color: #1bb99a;
    box-shadow: 0 0 0 3px rgba(27,185,154,.12);
    background: #fff;
}
.proc-input-group .proc-addon {
    display: flex;
    align-items: center;
    padding: 0 11px;
    font-size: 12px;
    font-weight: 600;
    color: #888;
    background: transparent;
    border: none;
    white-space: nowrap;
    user-select: none;
}
.proc-input-group .proc-addon-left  { border-right: 1px solid #e2e5ea; }
.proc-input-group .proc-addon-right { border-left:  1px solid #e2e5ea; }
.proc-input-group input {
    flex: 1;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 0 10px;
    font-size: 13px;
    color: #333;
    height: 36px;
    outline: none;
}

/* ── Color swatch ───────────────────────────── */
.proc-color-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
}
.proc-color-swatch {
    width: 38px; height: 38px;
    border-radius: 7px;
    border: 2px solid #e2e5ea;
    cursor: pointer;
    flex-shrink: 0;
    transition: border-color .2s;
    overflow: hidden;
    position: relative;
}
.proc-color-swatch:hover { border-color: #1bb99a; }
.proc-color-swatch input[type="color"] {
    opacity: 0;
    position: absolute;
    inset: 0;
    width: 100%; height: 100%;
    cursor: pointer;
    border: none;
    padding: 0;
}

/* ── Toggle row ─────────────────────────────── */
.proc-toggle-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 14px;
    background: #f7f8fa;
    border-radius: 9px;
    border: 1px solid #e2e5ea;
    margin-bottom: 8px;
}
.proc-toggle-text strong {
    display: block;
    font-size: 13px;
    color: #333;
    font-weight: 600;
}
.proc-toggle-text small { font-size: 11px; color: #aaa; }

/* ── ISS Radio cards ────────────────────────── */
.iss-card-group { display: flex; gap: 10px; flex-wrap: wrap; }
.iss-card {
    flex: 1 1 160px;
    border: 1.5px solid #e2e5ea;
    border-radius: 9px;
    padding: 12px 14px;
    cursor: pointer;
    transition: border-color .2s, background .2s;
    background: #f7f8fa;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 0;
}
.iss-card:hover { border-color: #1bb99a; background: #f0fdf9; }
.iss-card.iss-active {
    border-color: #1bb99a;
    background: #e8faf5;
}
.iss-card input[type="radio"] { display: none; }
.iss-card-dot {
    width: 16px; height: 16px;
    border-radius: 50%;
    border: 2px solid #ccc;
    flex-shrink: 0;
    margin-top: 2px;
    transition: border-color .2s, background .2s;
}
.iss-card.iss-active .iss-card-dot {
    border-color: #1bb99a;
    background: #1bb99a;
}
.iss-card-body strong { font-size: 12.5px; color: #333; font-weight: 600; display: block; }
.iss-card-body small  { font-size: 11px; color: #999; }

/* ── Buttons ────────────────────────────────── */
.proc-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 4px; }
.btn-proc-cancel {
    background: #f4f5f7;
    border: 1px solid #ddd;
    color: #666;
    border-radius: 7px;
    font-size: 13px;
    padding: 8px 20px;
    font-weight: 500;
}
.btn-proc-cancel:hover { background: #eaeaea; color: #444; }
.btn-proc-confirm {
    background: #1bb99a;
    border: none;
    color: #fff;
    border-radius: 7px;
    font-size: 13px;
    padding: 8px 22px;
    font-weight: 600;
    letter-spacing: .02em;
}
.btn-proc-confirm:hover { background: #17a387; color: #fff; }

/* ── Status pill ────────────────────────────── */
.proc-status-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .05em;
    text-transform: uppercase;
    padding: 3px 11px;
    border-radius: 20px;
    margin-left: 10px;
    vertical-align: middle;
}
.proc-status-pill.pill-active   { background: #e8faf5; color: #1bb99a; border: 1px solid #b2ead9; }
.proc-status-pill.pill-inactive { background: #fff0f0; color: #e74c3c; border: 1px solid #f5c6c6; }
.proc-status-pill::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }

/**NOTA FISCAL**/
 /* ── Página ── */
.nf-page-wrapper {
    background: #f4f6f9;
    min-height: 100%;
}

/* ── Breadcrumb ── */
.nf-breadcrumb {
    font-size: 12px;
    color: #8a97a5;
    margin-bottom: 6px;
    display: flex;
    align-items: center;
    gap: 6px;
}
.nf-breadcrumb a { color: #8a97a5; text-decoration: none; }
.nf-breadcrumb a:hover { color: #1abfb7; }
.nf-breadcrumb .sep { opacity: .5; }

/* ── Título ── */
.nf-page-title {
    font-size: 20px;
    font-weight: 700;
    color: #2b3445;
    margin: 0 0 18px;
}

/* ── Card base ── */
.nf-card {
    background: #fff;
    border: 0.5px solid #e3e8ef;
    border-radius: 12px;
    margin-bottom: 16px;
    overflow: hidden;
}
.nf-card-header {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 18px;
    border-bottom: 0.5px solid #e3e8ef;
}
.nf-card-header-title {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #6b7a8d;
    margin: 0;
}
.nf-card-header i {
    color: #8a97a5;
    font-size: 13px;
}
.nf-card-body {
    padding: 18px;
}

/* ── Toolbar da tabela ── */
.nf-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
    padding: 14px 18px;
    border-bottom: 0.5px solid #e3e8ef;
}
.nf-search-wrap {
    position: relative;
    flex: 1;
    max-width: 400px;
}
.nf-search-wrap .nf-search-icon {
    position: absolute;
    left: 11px;
    top: 50%;
    transform: translateY(-50%);
    color: #a0aab4;
    font-size: 13px;
    pointer-events: none;
}
.nf-search-input {
    width: 100%;
    padding: 7px 12px 7px 32px;
    background: #f4f6f9;
    border: none;
    border-radius: 8px;
    font-size: 13px;
    color: #2b3445;
    outline: none;
    transition: background .2s;
}
.nf-search-input:focus { background: #eaecf0; }
.nf-toolbar-actions { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }

/* ── Botões toolbar ── */
.btn-primary-outline {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 7px 14px;
    font-size: 12px; font-weight: 600;
    border-radius: 8px;
    background: #eaf7f2; color: #1abfb7;
    border: 1px solid #c0e8d8;
    transition: background .2s;
    text-decoration: none;
    cursor: pointer;
}
.btn-primary-outline:hover { background: #d2f0e5; color: #178a63; }
.btn-info-outline {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 7px 14px;
    font-size: 12px; font-weight: 600;
    border-radius: 8px;
    background: #eaf2fb; color: #378ADD;
    border: 1px solid #c0d9f0;
    transition: background .2s;
    cursor: pointer;
}
.btn-info-outline:hover { background: #d5e8f8; color: #2a6db5; }
.btn-danger-outline {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 7px 14px;
    font-size: 12px; font-weight: 600;
    border-radius: 8px;
    background: #fdeaea; color: #E24B4A;
    border: 1px solid #f5c2c7;
    transition: background .2s;
    text-decoration: none;
    cursor: pointer;
}
.btn-danger-outline:hover { background: #fbd5d5; color: #c93534; }

.financeiro-table-toolbar {
    padding: 14px 18px;
    border-bottom: 0.5px solid #e3e8ef;
}



.financeiro .table-responsive {
    padding-bottom: 12px;
}

.financeiro-bulk-toolbar {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 42px;
    margin: 0 0 14px;
}
@media (min-width: 768px) {
    .financeiro-bulk-toolbar {
        margin-bottom: -38px;
    }
}
.financeiro-bulk-toolbar .dropdown-menu {
    min-width: 150px;
    border: 0;
    border-radius: 8px;
    box-shadow: 0 12px 34px rgba(31, 41, 55, .16);
}

.financeiro-bulk-toolbar .dropdown-menu a {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    color: #2b3445;
    font-size: 13px;
    font-weight: 700;
}

.financeiro-bulk-toolbar .dropdown-menu a:hover {
    background: #f4f8fc;
    color: #1abfb7;
}

#financeiro-bulk-selected-count,
.financeiro-bulk-summary {
    color: #7c8898;
    font-size: 12px;
    font-weight: 700;
}

.financeiro-bulk-summary {
    margin-bottom: 14px;
}

.financeiro-bulk-checkbox {
    width: 17px;
    height: 17px;
    margin: 0;
    accent-color: #1abfb7;
    cursor: pointer;
}

.btn-info-outline:disabled,
.btn-info-outline.is-disabled {
    cursor: not-allowed;
    opacity: .55;
}

.financeiro-table .financeiro-status-badge {
    min-width: 76px;
    justify-content: center;
    white-space: nowrap;
}

.financeiro-actions-dropdown {
    position: relative;
    display: inline-flex;
    justify-content: center;
    z-index: 20;
}

.financeiro-actions-dropdown.open {
    z-index: 2000;
}

.financeiro-options-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    padding: 0;
    background: #37B5EA;
    border: 0;
    border-radius: 8px;
    box-shadow: 0 6px 14px rgba(55, 181, 234, .24);
    color: #fff;
    font-size: 20px;
    line-height: 1;
    transition: transform .16s ease, box-shadow .16s ease, background .16s ease;
}

.financeiro-options-button:hover,
.financeiro-options-button:focus,
.financeiro-actions-dropdown.open .financeiro-options-button {
    background: #1F9ED2;
    box-shadow: 0 8px 18px rgba(31, 158, 210, .28);
    color: #fff;
    outline: none;
    transform: translateY(-1px);
}

.financeiro-actions-menu {
    width: 230px;
    min-width: 230px;
    max-width: 230px;
    margin-top: 8px;
    padding: 8px;
    overflow: hidden;
    background: #fff;
    border: 0.5px solid #e3e8ef;
    border-radius: 10px;
    box-shadow: 0 18px 44px rgba(32, 41, 57, .18);
    z-index: 2200;
}

.financeiro-actions-menu > li > a {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 38px;
    padding: 9px 10px !important;
    border-radius: 8px;
    color: #1e88e5 !important;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.2;
    transition: background .16s ease, color .16s ease;
}

.financeiro-actions-menu > li > a i {
    width: 16px;
    text-align: center;
    font-size: 14px !important;
}

.financeiro-actions-menu > li > a:hover,
.financeiro-actions-menu > li > a:focus {
    background: #f4f8fc;
    color: #1D72C8 !important;
    text-decoration: none;
}

.financeiro-actions-menu > li > a.cancelar-recebimento,
.financeiro-actions-menu > li > a.cancelar-pagamento,
.financeiro-actions-menu > li > a[data-target^="#modal-excluir"] {
    color: #E24B4A !important;
}

.financeiro-actions-menu > li > a.cancelar-recebimento:hover,
.financeiro-actions-menu > li > a.cancelar-pagamento:hover,
.financeiro-actions-menu > li > a[data-target^="#modal-excluir"]:hover {
    background: #fff1f1;
    color: #C93534 !important;
}

.financeiro-table-category {
    display: block;
    max-width: 85px;
    overflow: hidden;
    text-overflow: ellipsis;
    max-height: 55px;
    font-size: 12px;
}

.financeiro-table a.financeiro-status-badge:hover,
.financeiro-table a.financeiro-status-badge:focus {
    text-decoration: none;
}

.paciente-financeiro-heading {
    display: none;
}

.paciente-financeiro-card {
    border: 1px solid #e3e8ef;
    border-radius: 10px;
    box-shadow: none;
    overflow: visible;
}

.paciente-financeiro-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.paciente-financeiro-body {
    padding-top: 14px;
}

.paciente-financeiro-table .paciente-financeiro-title {
    display: block;
    color: #1e88e5;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.25;
}

.paciente-financeiro-table td small {
    display: block;
    color: #65758b;
    font-size: 11px;
    line-height: 1.35;
}

.paciente-financeiro-category {
    max-width: 150px;
    max-height: 22px;
    white-space: nowrap;
}

.paciente-financeiro-parcela {
    display: inline-flex;
    margin-top: 5px;
    padding: 2px 7px;
    font-size: 10px;
    line-height: 1.2;
    cursor: default;
}
.paciente-financeiro-total-row{
    margin-top: 10px;
}
.paciente-financeiro-total-row td {
    border-top: 1px solid #e3e8ef !important;
    color: #6b7a8d;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.paciente-financeiro-total-row .valor {
    color: #1abfb7;
    font-size: 15px;
    text-transform: none;
    letter-spacing: 0;
    padding-left: 15px;
    min-width: 110px;
}

.financeiro-recorrencia-modal {
    box-shadow: 0 18px 60px rgba(32, 41, 57, .18);
}

.financeiro-recorrencia-body {
    padding: 22px;
    background: #fff;
}

.financeiro-recorrencia-loading {
    min-height: 180px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    color: #71839e;
    font-size: 13px;
    font-weight: 700;
}

.financeiro-recorrencia-summary {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 16px;
    padding: 16px;
    background: #fbfcfe;
    border: 0.5px solid #e3e8ef;
    border-radius: 10px;
}

.financeiro-recorrencia-title {
    min-width: 0;
    flex: 1;
}

.financeiro-recorrencia-label {
    display: block;
    color: #8a97a5;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.financeiro-recorrencia-title strong {
    display: block;
    margin-top: 6px;
    color: #2b3445;
    font-size: 17px;
    font-weight: 800;
    line-height: 1.25;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.financeiro-recorrencia-title small {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-top: 6px;
    color: #71839e;
    font-size: 12px;
}

.financeiro-recorrencia-dot {
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: #a8b4c5;
}

.financeiro-recorrencia-kpis {
    display: grid;
    grid-template-columns: repeat(3, minmax(110px, 1fr));
    gap: 10px;
}

.financeiro-recorrencia-kpis > div {
    padding: 10px 12px;
    background: #fff;
    border: 0.5px solid #e3e8ef;
    border-radius: 8px;
}

.financeiro-recorrencia-kpis span {
    display: block;
    color: #8a97a5;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.financeiro-recorrencia-kpis strong {
    display: block;
    margin-top: 4px;
    color: #2b3445;
    font-size: 15px;
    font-weight: 800;
    white-space: nowrap;
}

.financeiro-recorrencia-meta {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 14px 0;
}

.financeiro-recorrencia-meta span {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 5px 10px;
    border-radius: 999px;
    background: #eef6ff;
    color: #3a7bd5;
    font-size: 12px;
    font-weight: 800;
}

.financeiro-recorrencia-meta span:last-child {
    background: #e9f8f1;
    color: #14996d;
}

.financeiro-recorrencia-table-wrap {
    max-height: 360px;
    overflow: auto;
    border: 0.5px solid #e3e8ef;
    border-radius: 10px;
}

.financeiro-recorrencia-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 13px;
}

.financeiro-recorrencia-table thead th {
    position: sticky;
    top: 0;
    z-index: 1;
    padding: 11px 14px;
    background: #f8fafc;
    border-bottom: 1px solid #e7eef7;
    color: #8090a8;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
    white-space: nowrap;
}

.financeiro-recorrencia-table tbody td {
    padding: 12px 14px;
    border-bottom: 1px solid #eef3f8;
    color: #2b3445;
    vertical-align: middle;
}

.financeiro-recorrencia-table tbody tr:last-child td {
    border-bottom: 0;
}

.financeiro-recorrencia-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 82px;
    padding: 5px 9px;
    border-radius: 7px;
    border: 1px solid transparent;
    font-size: 11px;
    font-weight: 800;
}

.financeiro-recorrencia-status.is-success {
    color: #14996d;
    background: #e9f8f1;
    border-color: #bdecd9;
}

.financeiro-recorrencia-status.is-danger {
    color: #de4942;
    background: #fff1f1;
    border-color: #ffcfd0;
}

.financeiro-recorrencia-status.is-info {
    color: #3a7bd5;
    background: #eef6ff;
    border-color: #d6e7fd;
}

.financeiro-recorrencia-edit-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    border: 1px solid #d6e7fd;
    background: #eef6ff;
    color: #2f7ed8;
    transition: background .16s ease, border-color .16s ease, color .16s ease;
}

.financeiro-recorrencia-edit-action:hover,
.financeiro-recorrencia-edit-action:focus {
    background: #dfeeff;
    border-color: #b8d6fb;
    color: #1d72c8;
    text-decoration: none;
}

.financeiro-edit-parcela-badge {
    display: inline-flex;
    align-items: center;
    margin-left: 8px;
    padding: 3px 8px;
    border-radius: 999px;
    border: 1px solid #bdecd9;
    background: #e9f8f1;
    color: #14996d;
    font-size: 11px;
    font-weight: 800;
    vertical-align: middle;
}

.financeiro-parcela-badge-icon {
    margin-left: 5px;
    font-size: 9px;
    opacity: .82;
}

.financeiro-edit-situacao-badge {
    display: inline-flex;
    align-items: center;
    margin-left: 8px;
    padding: 3px 8px;
    border-radius: 999px;
    border: 1px solid transparent;
    font-size: 11px;
    font-weight: 800;
    vertical-align: middle;
}

.financeiro-edit-situacao-badge.is-success {
    color: #14996d;
    background: #e9f8f1;
    border-color: #bdecd9;
}

.financeiro-edit-situacao-badge.is-danger {
    color: #de4942;
    background: #fff1f1;
    border-color: #ffcfd0;
}

.financeiro-edit-situacao-badge.is-info {
    color: #3a7bd5;
    background: #eef6ff;
    border-color: #d6e7fd;
}

.financeiro-despesa-edit-submit-actions {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

#modal-despesa-edit.is-readonly .financeiro-receita-body {
    background: #fbfcfe;
}

@media (max-width: 900px) {
    .financeiro-recorrencia-summary {
        flex-direction: column;
    }

    .financeiro-recorrencia-kpis {
        grid-template-columns: 1fr;
    }

    .financeiro-recorrencia-table {
        min-width: 620px;
    }
}

/* ── Tabela ── */
.nf-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.nf-table thead th {
    padding: 10px 12px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: #6b7a8d;
    background: #f8fafc;
    border-bottom: 1px solid #e3e8ef;
    white-space: nowrap;
}
.nf-table tbody tr { border-bottom: 1px solid #f0f3f7; transition: background .15s; }
.nf-table tbody tr:hover { background: #f8fafc; }
.nf-table tbody td { padding: 10px 12px; color: #2b3445; vertical-align: middle; }
.nf-table tbody td small { color: #6b7a8d; }

/* ── Badges de situação ── */
.nf-badge {
    display: inline-flex; align-items: center;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 600;
    white-space: nowrap;
}
.nf-badge-info    { background: #e8f2fd; color: #378ADD; }
.nf-badge-warning { background: #fef9e7; color: #d4a017; }
.nf-badge-success { background: #eaf7f2; color: #1abfb7; }
.nf-badge-danger  { background: #fdeaea; color: #E24B4A; }
.nf-badge-dark    { background: #ebebeb; color: #555; }
.nf-badge-purple  { background: #f0effe; color: #7F77DD; }
.nf-badge-secondary { background: #f0f3f7; color: #8a97a5; }

/* ── Botões de ação na linha ── */
.btn-nf-action {
    display: inline-flex; align-items: center; justify-content: center;
    width: 28px; height: 28px;
    border-radius: 6px;
    border: none;
    font-size: 12px;
    cursor: pointer;
    transition: background .15s;
    text-decoration: none;
}
.btn-nf-action.view  { background: #eaf2fb; color: #378ADD; }
.btn-nf-action.view:hover  { background: #d5e8f8; }
.btn-nf-action.cancel { background: #fdeaea; color: #E24B4A; }
.btn-nf-action.cancel:hover { background: #fbd5d5; }

@media (max-width: 768px) {
    .nf-toolbar { flex-direction: column; align-items: flex-start; }
    .nf-search-wrap { max-width: 100%; width: 100%; }
}
.nf-filter-card {
    background: #fff;
    border: 0.5px solid #e3e8ef;
    border-radius: 12px;
    margin-bottom: 16px;
    overflow: hidden;
}
.nf-filter-header {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 18px;
    border-bottom: 0.5px solid #e3e8ef;
}
.nf-filter-header i { color: #8a97a5; font-size: 13px; }
.nf-filter-header-title {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #6b7a8d;
    margin: 0;
}
.nf-filter-body { padding: 18px; }

.nf-filter-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 14px;
    align-items: end;
}
.nf-filter-grid.with-custom-dates {
    grid-template-columns: repeat(8, 1fr);
}

.nf-field label {
    display: block;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: #8a97a5;
    margin-bottom: 5px;
}
.nf-field input,
.nf-field select {
    width: 100%;
    padding: 7px 10px;
    background: #f4f6f9;
    border: 1px solid #e3e8ef;
    border-radius: 8px;
    font-size: 13px;
    color: #2b3445;
    transition: border-color .2s, background .2s;
    outline: none;
}
.nf-field input:focus,
.nf-field select:focus {
    border-color: #1abfb7;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(29,158,117,.08);
}

.nf-filter-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 18px;
}
.btn-nf-search {
    display: inline-flex; align-items: center; gap: 7px;
    padding: 8px 18px;
    background: #1abfb7;
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: background .2s;
}
.btn-nf-search:hover { background: #178a63; }
.btn-nf-clear {
    display: inline-flex; align-items: center; gap: 7px;
    padding: 8px 16px;
    background: #f4f6f9;
    color: #6b7a8d;
    border: 1px solid #e3e8ef;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    text-decoration: none;
    transition: background .2s, color .2s;
}
.btn-nf-clear:hover { background: #e8ecf0; color: #2b3445; }

@media (max-width: 1200px) {
    .nf-filter-grid { grid-template-columns: repeat(3, 1fr); }
    .nf-filter-grid.with-custom-dates { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 768px) {
    .nf-filter-grid { grid-template-columns: repeat(2, 1fr); }
    .nf-filter-grid.with-custom-dates { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 480px) {
    .nf-filter-grid { grid-template-columns: 1fr; }
    .nf-filter-grid.with-custom-dates { grid-template-columns: 1fr; }
}
.nf-status-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 10px;
    margin-bottom: 16px;
}
.nf-status-card {
    background: #fff;
    border: 0.5px solid #e3e8ef;
    border-radius: 12px;
    padding: 14px 10px;
    text-align: center;
    cursor: pointer;
    transition: transform .2s, box-shadow .2s, border-color .2s;
    text-decoration: none !important;
    display: block;
}
.nf-status-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(0,0,0,.08);
}
.nf-status-card.is-active {
    box-shadow: 0 4px 14px rgba(0,0,0,.10);
}

/* label colorida no topo */
.nf-status-label {
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
    padding: 2px 10px;
    border-radius: 20px;
    margin-bottom: 10px;
    white-space: nowrap;
}

/* número em destaque */
.nf-status-count {
    font-size: 22px;
    font-weight: 800;
    line-height: 1.1;
    margin-bottom: 4px;
}

/* valor em R$ */
.nf-status-value {
    font-size: 12px;
    color: #8a97a5;
    font-weight: 500;
}

/* variações de cor */
.nf-sc-blue   .nf-status-label { background:#e8f2fd; color:#378ADD; }
.nf-sc-blue   .nf-status-count { color:#378ADD; }
.nf-sc-blue.is-active           { border-color:#378ADD; border-top: 3px solid #378ADD; }

.nf-sc-purple .nf-status-label { background:#f0effe; color:#7F77DD; }
.nf-sc-purple .nf-status-count { color:#7F77DD; }
.nf-sc-purple.is-active         { border-color:#7F77DD; border-top: 3px solid #7F77DD; }

.nf-sc-green  .nf-status-label { background:#eaf7f2; color:#1abfb7; }
.nf-sc-green  .nf-status-count { color:#1abfb7; }
.nf-sc-green.is-active          { border-color:#1abfb7; border-top: 3px solid #1abfb7; }

.nf-sc-red    .nf-status-label { background:#fdeaea; color:#E24B4A; }
.nf-sc-red    .nf-status-count { color:#E24B4A; }
.nf-sc-red.is-active            { border-color:#E24B4A; border-top: 3px solid #E24B4A; }

.nf-sc-gray   .nf-status-label { background:#f0f3f7; color:#6b7a8d; }
.nf-sc-gray   .nf-status-count { color:#6b7a8d; }
.nf-sc-gray.is-active           { border-color:#8a97a5; border-top: 3px solid #8a97a5; }

.nf-sc-total  .nf-status-label { background:#eaf7f2; color:#1abfb7; }
.nf-sc-total  .nf-status-count { color:#1abfb7; }
.nf-sc-total  { border: 2px solid #c0e8d8; }
.nf-sc-total.is-active          { border-color:#1abfb7; border-top: 3px solid #1abfb7; }

@media (max-width: 1100px) { .nf-status-grid { grid-template-columns: repeat(3,1fr); } }
@media (max-width: 600px)  { .nf-status-grid { grid-template-columns: repeat(2,1fr); } }

/* Visao geral financeira */
.financeiro-geral-page {
    display: grid;
    gap: 14px;
}

.financeiro-geral-panel,
.financeiro-geral-chart-panel {
    border: 1px solid #dfe7f3;
    border-radius: 8px;
    box-shadow: 0 6px 16px rgba(30, 56, 91, 0.04);
    overflow: hidden;
}

.financeiro-geral-panel .panel-body,
.financeiro-geral-chart-panel .panel-body {
    padding: 0;
}

.financeiro-geral-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 0 10px;
}

.financeiro-geral-header h4 {
    margin: 2px 0 0;
    font-size: 18px;
    font-weight: 700;
    color: #2a3952;
}

.financeiro-geral-eyebrow {
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    color: #8798b3;
    letter-spacing: .05em;
}

.financeiro-geral-period-chip {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 12px;
    border-radius: 8px;
    background: #eef6ff;
    border: 1px solid #d7e6fb;
    color: #3a7bd5;
    font-size: 12px;
    font-weight: 700;
    text-transform: capitalize;
}

.financeiro-geral-kpis {
    margin-bottom: 0;
}

.financeiro-kpi-card {
    height: 100%;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 16px 14px;
    border-radius: 8px;
    border: 1px solid #dfe7f3;
    background: #fff;
    box-shadow: 0 6px 16px rgba(30, 56, 91, 0.04);
}

.financeiro-kpi-icon {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    flex-shrink: 0;
}

.financeiro-kpi-content {
    min-width: 0;
}

.financeiro-kpi-label {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: #8798b3;
    margin-bottom: 7px;
}

.financeiro-kpi-value {
    font-size: 18px;
    line-height: 1;
    font-weight: 800;
    color: #24344d;
    margin-bottom: 6px;
}

.financeiro-kpi-meta {
    color: #7d8da6;
    font-size: 12px;
    line-height: 1.35;
}

.kpi-receita { border-top: 3px solid #18a05e; }
.kpi-receita .financeiro-kpi-icon { background: rgba(24, 160, 94, 0.12); color: #18a05e; }
.kpi-despesa { border-top: 3px solid #db4d48; }
.kpi-despesa .financeiro-kpi-icon { background: rgba(219, 77, 72, 0.12); color: #db4d48; }
.kpi-saldo { border-top: 3px solid #3a7bd5; }
.kpi-saldo .financeiro-kpi-icon { background: rgba(58, 123, 213, 0.12); color: #3a7bd5; }
.kpi-caixa { border-top: 3px solid #14b8a6; }
.kpi-caixa .financeiro-kpi-icon { background: rgba(20, 184, 166, 0.12); color: #14b8a6; }

.financeiro-geral-alerts {
    margin-top: 0;
}

.financeiro-alert-card {
    height: 100%;
    padding: 14px 16px;
    border-radius: 8px;
    border: 1px solid #dfe7f3;
    background: #fff;
    box-shadow: 0 6px 16px rgba(30, 56, 91, 0.04);
}

.financeiro-alert-label {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: #8798b3;
    margin-bottom: 8px;
}

.financeiro-alert-value {
    font-size: 18px;
    line-height: 1;
    font-weight: 800;
    color: #24344d;
    margin-bottom: 7px;
}

.financeiro-alert-meta {
    font-size: 12px;
    color: #7b8ca7;
}

.financeiro-alert-danger { border-top: 3px solid #ef5350; }
.financeiro-alert-blue { border-top: 3px solid #3a86ff; }
.financeiro-alert-orange { border-top: 3px solid #f59e0b; }

.financeiro-geral-panel-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 18px;
    border-bottom: 1px solid #e7eef7;
    background: #fff;
}

.financeiro-geral-panel-heading .panel-title {
    margin: 0 0 3px;
    font-size: 15px;
    font-weight: 700;
    color: #2a3952;
}

.financeiro-geral-panel-heading small {
    font-size: 12px;
    color: #8493ab;
}

.financeiro-geral-list-body {
    padding: 0;
}

.financeiro-geral-table-wrap {
    width: 100%;
    overflow-x: auto;
}

.financeiro-geral-table {
    width: 100%;
    margin: 0;
    border-collapse: collapse;
    table-layout: fixed;
}

.financeiro-geral-table thead th {
    padding: 10px 18px;
    background: #f8fafc;
    border-bottom: 1px solid #e7eef7;
    color: #8090a8;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
    white-space: nowrap;
}

.financeiro-geral-table tbody td {
    padding: 11px 18px;
    border-bottom: 1px solid #eef3f8;
    vertical-align: middle;
}

.financeiro-geral-table tbody tr:last-child td {
    border-bottom: 0;
}

.financeiro-geral-table tbody tr.is-overdue {
    background: rgba(239, 83, 80, 0.04);
}

.financeiro-geral-table th:nth-child(1),
.financeiro-geral-table td:nth-child(1) {
    width: 46%;
}

.financeiro-geral-table th:nth-child(2),
.financeiro-geral-table td:nth-child(2) {
    width: 18%;
}

.financeiro-geral-table th:nth-child(3),
.financeiro-geral-table td:nth-child(3) {
    width: 18%;
}

.financeiro-geral-table th:nth-child(4),
.financeiro-geral-table td:nth-child(4) {
    width: 18%;
}

.financeiro-geral-description {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 9px;
}

.financeiro-geral-description > span:last-child {
    min-width: 0;
}

.financeiro-geral-description strong,
.financeiro-geral-description small {
    display: block;
    max-width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.financeiro-geral-description strong {
    color: #2a3952;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.3;
}

.financeiro-geral-description small {
    margin-top: 2px;
    color: #71839e;
    font-size: 11px;
    line-height: 1.25;
}

.financeiro-geral-date {
    color: #667895;
    font-size: 12px;
    white-space: nowrap;
}

.financeiro-transaction-icon {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
}

.financeiro-transaction-icon.receita {
    background: rgba(34, 197, 94, 0.12);
    color: #18a05e;
}

.financeiro-transaction-icon.despesa {
    background: rgba(239, 68, 68, 0.10);
    color: #db4d48;
}

.financeiro-transaction-value {
    font-size: 13px;
    line-height: 1.1;
    font-weight: 700;
    margin-bottom: 0;
    white-space: nowrap;
}

.financeiro-transaction-value.positive { color: #18a05e; }
.financeiro-transaction-value.negative { color: #db4d48; }

.financeiro-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 78px;
    padding: 4px 9px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 700;
    border: 1px solid transparent;
}

.pill-success {
    color: #14996d;
    background: #e9f8f1;
    border-color: #bdecd9;
}

.pill-danger {
    color: #de4942;
    background: #fff1f1;
    border-color: #ffcfd0;
}

.pill-blue {
    color: #3a7bd5;
    background: #eef6ff;
    border-color: #d6e7fd;
}

.pill-orange {
    color: #d48806;
    background: #fff7e6;
    border-color: #ffe1a8;
}

.financeiro-empty-state {
    min-height: 130px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    color: #91a0b8;
    font-size: 13px;
}

.financeiro-chart-wrap {
    padding: 14px 18px 8px;
}

.financeiro-geral-pie-row {
    margin-top: 0;
}

.financeiro-geral-pie-panel {
    min-height: 330px;
}

.financeiro-pie-chart-wrap {
    height: 260px;
    padding-bottom: 14px;
}

.financeiro-pie-chart-wrap canvas {
    max-height: 240px;
}

.financeiro-chart-legend {
    display: flex;
    align-items: center;
    gap: 14px;
    color: #7d8da6;
    font-size: 12px;
    font-weight: 600;
}

.financeiro-legend-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    display: inline-block;
    margin-right: 6px;
}

.financeiro-legend-dot.success { background: #18a05e; }
.financeiro-legend-dot.danger { background: #ef5350; }

@media (max-width: 991px) {
    .financeiro-geral-hero-content,
    .financeiro-geral-panel-heading,
    .financeiro-geral-header {
        flex-direction: column;
        align-items: flex-start;
    }

    .financeiro-geral-period-chip,
    .financeiro-geral-table-wrap {
        width: 100%;
    }

    .financeiro-geral-table {
        min-width: 620px;
    }
}

.nfe-tax-control {
    position: relative;
    display: flex;
    align-items: stretch;
    gap: 8px;
}

.nfe-tax-select,
.nfe-tax-edit-button {
    height: 42px;
    border: 1px solid #d8dee9;
    background: #fff;
    color: #2d3748;
    border-radius: 6px;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.nfe-tax-select {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 12px;
    text-align: left;
}

.nfe-tax-select:focus,
.nfe-tax-select:hover,
.nfe-tax-edit-button:hover {
    border-color: #d8dee9;
    box-shadow: none;
}

.nfe-tax-clear {
    color: #9aa5b5;
    margin-left: 10px;
}

.nfe-tax-edit-button {
    width: 42px;
    color: #7b8797;
}

.nfe-tax-edit-button:disabled {
    cursor: not-allowed;
    opacity: .45;
    box-shadow: none;
}

.nfe-tax-dropdown,
.nfe-condition-menu {
    display: none;
    position: absolute;
    z-index: 1075;
    min-width: 260px;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 7px;
    box-shadow: 0 14px 32px rgba(15, 23, 42, .16);
    overflow: hidden;
}

.nfe-tax-dropdown {
    top: 48px;
    left: 0;
    right: 50px;
}

.nfe-tax-dropdown.is-open,
.nfe-condition-menu.is-open {
    display: block;
}

.nfe-tax-option,
.nfe-condition-menu button {
    display: block;
    width: 100%;
    border: 0;
    background: #fff;
    color: #3f4652;
    text-align: left;
    padding: 11px 14px;
    font-weight: 600;
}

.nfe-tax-option:hover,
.nfe-tax-option.is-active,
.nfe-condition-menu button:hover {
    background: #1abfb7;
    color: #fff;
}

.nfe-tax-empty-option {
    padding: 12px 14px;
    color: #8a97a8;
    font-size: 13px;
}

.nfe-tax-add-button,
.nfe-tax-outline-button {
    border: 1px solid #1abfb7;
    background: #fff;
    color: #1abfb7;
    border-radius: 22px;
    font-weight: 700;
    transition: background .18s ease, color .18s ease, border-color .18s ease;
}

.nfe-tax-add-button {
    margin: 8px 10px 10px;
    padding: 7px 14px;
}

.nfe-tax-outline-button {
    padding: 7px 16px;
}

.nfe-tax-add-button:hover,
.nfe-tax-outline-button:hover {
    background: #1abfb7;
    border-color: #1abfb7;
    color: #fff;
}

.nfe-tax-modal .modal-content {
    border-radius: 8px;
    overflow: visible;
}

.nfe-tax-modal-header {
    padding: 18px 24px;
    border-bottom: 1px solid #e6ebf2;
}

.nfe-tax-modal-header .modal-title {
    color: #303846;
    font-size: 16px;
    font-weight: 800;
}

.nfe-tax-modal-body {
    padding: 22px 26px;
}

.nfe-rule-modal .modal-body {
    max-height: 72vh;
    overflow-y: auto;
}

.nfe-tax-modal-body label {
    color: #4a4f58;
    font-weight: 700;
}

.nfe-tax-required:before {
    content: '* ';
    color: #f04455;
}

.nfe-tax-model-toggle {
    display: inline-flex;
    height: 40px;
    border: 1px solid #d8dee9;
    border-radius: 6px;
    overflow: hidden;
}

.nfe-tax-model-toggle span,
.nfe-tax-model-toggle strong {
    min-width: 70px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #f4f6f8;
    color: #a0a8b3;
    font-weight: 700;
}

.nfe-tax-model-toggle strong {
    background: #d8d8d8;
    color: #7b7f87;
}

.nfe-tax-section-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin: 24px 0 18px;
    color: #4a4f58;
    font-weight: 800;
}

.nfe-tax-section-title:before,
.nfe-tax-section-title:after {
    content: '';
    height: 1px;
    background: #e6ebf2;
    flex: 1;
}

.nfe-tax-section-title span {
    white-space: nowrap;
}

.nfe-tax-section-title .nfe-rule-add-wrap,
.nfe-tax-section-title .nfe-rule-condition-wrap {
    flex: none;
}

.nfe-tax-rules-empty {
    padding: 18px;
    border: 1px dashed #d8dee9;
    border-radius: 8px;
    color: #8997ab;
    text-align: center;
}

.nfe-tax-rule-card {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    padding: 14px 16px;
    border-bottom: 1px solid #edf1f6;
}

.nfe-tax-rule-summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 24px;
    flex: 1;
}

.nfe-tax-rule-summary span,
.nfe-rule-condition-title span {
    display: block;
    color: #7c8796;
    font-size: 12px;
    font-weight: 700;
}

.nfe-tax-rule-summary strong {
    display: block;
    margin-top: 3px;
    color: #333b48;
    font-size: 13px;
    font-weight: 700;
}

.nfe-tax-rule-actions {
    display: flex;
    align-items: center;
    gap: 10px;
}

.nfe-tax-mini-button {
    border: 1px solid #d8dee9;
    background: #fff;
    color: #4a4f58;
    border-radius: 18px;
    padding: 6px 12px;
    font-weight: 700;
}

.nfe-tax-mini-button.danger {
    border-color: #ff4052;
    background: #ff4052;
    color: #fff;
}

.nfe-rule-condition-wrap {
    position: relative;
}

.nfe-condition-menu {
    top: 42px;
    right: 0;
}

.nfe-rule-condition {
    margin-bottom: 20px;
}

.nfe-rule-condition-title {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}

.nfe-rule-condition-title:after {
    content: '';
    height: 1px;
    background: #e6ebf2;
    flex: 1;
}

.nfe-rule-remove-condition {
    border: 0;
    background: transparent;
    color: #6f7784;
}

.nfe-rule-check-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 18px;
}

.nfe-rule-check-row label {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin: 0;
    color: #424852;
    font-weight: 600;
}

.nfe-rule-check-row input[type="checkbox"] {
    width: 17px;
    height: 17px;
}

.nfe-tax-percent-row,
.nfe-tax-spaced-row {
    margin-top: 16px;
}

.nfe-tax-switch-label {
    display: block;
    margin: 11px 0 7px;
}

.nfe-tax-switch {
    position: relative;
    display: inline-block;
    width: 44px;
    height: 24px;
    margin: 0;
}

.nfe-tax-switch input {
    display: none;
}

.nfe-tax-switch span {
    position: absolute;
    cursor: pointer;
    inset: 0;
    background: #a6a8aa;
    border-radius: 999px;
    transition: background .18s ease;
}

.nfe-tax-switch span:before {
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    left: 2px;
    top: 2px;
    background: #fff;
    border-radius: 50%;
    box-shadow: 0 1px 3px rgba(15, 23, 42, .25);
    transition: transform .18s ease;
}

.nfe-tax-switch input:checked + span {
    background: #1abfb7;
}

.nfe-tax-switch input:checked + span:before {
    transform: translateX(20px);
}

.nfe-tax-modal-footer {
    padding: 14px 24px;
    border-top: 1px solid #e6ebf2;
}

@media (max-width: 767px) {
    .nfe-tax-rule-card,
    .nfe-tax-rule-actions,
    .nfe-tax-section-title {
        align-items: flex-start;
        flex-direction: column;
    }

    .nfe-tax-rule-summary {
        grid-template-columns: 1fr;
    }

    .nfe-tax-dropdown {
        right: 0;
    }
}
