:root{
   --menu-width: 265px;

   --main-color: #293d62;
   --main-dark-color: #323a45;
   --main-medium-color: #405783;
   --main-normal-color: #7a88a2;
   --main-light-color: #e1e4e9;
   --main-ultralight-color: #f4f6f7;

   --grey-light-color: #dfdfdf;
   --grey-ultralight-color: #fafafa;

   --green-color: #40c714;
   --green-dark-color: #2a9308;

   --red-color: #cc2525;
}

::-webkit-scrollbar{ width:3px; }
::-webkit-scrollbar-thumb{ background:var(--main-dark-color); }
::-webkit-scrollbar-track{ background:#cfcfcf; }

::placeholder{ color:rgba(0,0,0,0.3); }

*{ padding:0; margin:0; box-sizing:border-box; user-select:none; font-family:Arial; }
*:focus{ outline:none; }
body{ overflow:hidden; font-size:14px; font-family:Arial; text-decoration:none; color:#000000; }
input, select, textarea{ font-size:14px; font-family:Arial; background:#ffffff; }

a{ text-decoration:none; color:var(--main-dark-color); }
h3{ margin-top:35px; margin-bottom:25px; text-align:center; font-size:21px; user-select:none; text-transform:uppercase; }

/* MOBILE MENU */
.mobile-menu{ display:none; }

/* MENU */
.menu-backdrop{ display:none; z-index:2997; }
nav.menu{ position:fixed; top:0; left:0; height:100vh; background:#ffffff; width:var(--menu-width); overflow-x:hidden; box-shadow:0 0 5px 0 rgba(0,0,0,.25); z-index:2998; }
nav.menu *{ user-select:none; }
nav.menu ul{ margin:35px 0; width:100%; }
nav.menu ul li{ position:relative; transition:background 0.3s; }
nav.menu ul li:empty{ margin-bottom:10px; }
nav.menu ul li.title{ background:none!important; cursor:pointer; margin:17px 0 0 0; padding:8px 0 8px 10px; color:var(--main-color); font-weight:bold; text-transform:uppercase; border-bottom:solid 1px var(--grey-ultralight-color); }
nav.menu ul li a{ display:inline-block; padding:7px 15px; margin-bottom:2px; width:200px; color:var(--main-color); }
nav.menu ul li .fas{ width:15px; margin:0 5px; opacity:0; position:absolute; top:12px; right:5px; font-size:10px; transition:color 0.3s; }
nav.menu ul li.title .fas{ display:inline-block; color:var(--main-color); position:initial; opacity:1; width:auto; font-size:14px; }
nav.menu ul li.title .fa-caret-right,
nav.menu ul li.title .fa-caret-down{ float:right; margin-right:20px; color:var(--main-normal-color); }
nav.menu ul li.title.open .fa-caret-right,
nav.menu ul li.title:hover .fa-caret-right,
nav.menu ul li.title.open .fa-caret-down,
nav.menu ul li.title:hover .fa-caret-down{ color:var(--main-color); }
nav.menu ul li:hover{ background:var(--main-ultralight-color); }
nav.menu a:hover{ color:var(--main-color); }
nav.menu a:hover .fas{ opacity:1; }
nav.menu a.active{ color:#40c714; }
nav.menu a.active .fas{ opacity:1; }
nav.menu .submenu{ display:none; margin:0px 0 27px 0; padding-top:7px; }
nav.menu .submenu.open{ display:block; background:var(--grey-ultralight-color); }

nav.menu .logo{ background:var(--main-color); min-height:98px; color:#ffffff; vertical-align:middle; position:relative; }
nav.menu .logo a{ color:#ffffff!important; font-size:23px; vertical-align:middle; position:absolute; left:0; padding:15px; top:50%; transform:translateY(-50%); text-align:center; width:100%; }

.top-menu #quick_access{ padding:4px 8px 3px 8px; background:var(--main-ulralight-color); border:none; font-size:14px; width:100%; margin-bottom:15px; display:none; }
.top-menu #quick_access_chosen.chosen-container.chosen-container-single{ width:250px!important; float:left; }
.top-menu #quick_access_chosen .chosen-single{ text-align:left; height:39px; border:none; background:none; padding:7px 10px; }
.top-menu #quick_access_chosen .chosen-single:hover{ background:var(--main-light-color); }
.top-menu #quick_access_chosen.chosen-container-active .chosen-single{ background:var(--main-light-color); }
.top-menu #quick_access_chosen.chosen-container .chosen-drop{ text-align:left; }

/* TOP MENU */
.top-menu{ height:39px; background:#ffffff; margin-left:250px; padding:0 25px; text-align:right; border-bottom:solid 1px var(--grey-light-color); z-index:7901; width:calc(100vw - var(--menu-width)); position:fixed; top:0; right:0; }
.top-menu a{ padding:11px 15px 11px 15px; font-size:16px; text-align:center; margin-left:5px; display:inline-block; transition:color 0.3s, background 0.3s; }
.top-menu a .fas{ margin:0; }
.top-menu a:hover{ background:var(--grey-light-color); }
.top-menu a.active{ color:#ffffff; background:var(--main-medium-color); }

/* MAIN */
main.main{ position:fixed; top:39px; left:var(--menu-width); height:calc(100vh - 39px); width:calc( 100vw - var(--menu-width) ); overflow-x:hidden;  background:#f4f5f8; }
main.main .content{ position:relative; padding:85px 60px 90px 60px; }
body#dashboard main.main .content{ position:relative; padding:35px 60px 90px 60px; }
body#login{ background:url('/img/bg/zen3.jpg'); background-repeat:no-repeat; background-size:cover; width:100vw; height:100vh; }

/* BADGES */
.badge{ font-size:10px; padding:3px 5px; border-radius:3px; background:var(--main-dark-color); color:#ffffff; }
.badge span{ color:#ffffff; }
.badge-disabled{ color:#ffffff!important; background:#bfbfbf; }
.badge-canceled{ color:#ffffff!important; background:#d51c1c; }
.badge-green{ color:#ffffff!important; background:#40c714; }
.badge-orange{ color:#ffffff!important; background:#f2a212; }
.badge-red{ color:#ffffff!important; background:#d51c1c; }

/* BTNS */
.btn{ display:inline-block; border:solid 1px var(--grey-light-color); padding:5px 10px; background:#ffffff; border-radius:3px; cursor:pointer; font-size:15px; user-select:none; transition:background 0.3s, border 0.3s; }
.btn .fas{ font-size:14px; margin-right:5px; }
.btn:hover{ background:var(--main-ultralight-color); border-color:var(--grey-light-color); }

.btn-primary{ background:var(--main-medium-color); color:#ffffff; border-color:var(--main-medium-color); }
.btn-primary span{ color:#ffffff; }
.btn-primary .fas{ color:#ffffff; }
.btn-primary:hover{ background:var(--main-color); border-color:var(--main-color); }

.btn-success{ background:var(--green-color); color:#ffffff; border-color:var(--green-color); }
.btn-success span{ color:#ffffff; }
.btn-success .fas{ color:#ffffff; }
.btn-success:hover{ background:var(--green-dark-color); }

.btn-warning{ background:#f2a212;; color:#ffffff; border-color:#faaa1a; }
.btn-warning span{ color:#ffffff; }
.btn-warning .fas{ color:#ffffff; }
.btn-warning:hover{ background:#d78f0d; }

.btn-error{ color:#ffffff; background:var(--red-color); }
.btn-error:hover{ color:#ffffff; background:var(--red-color); }

.btn-error.outline{ color:var(--red-color); background:#ffffff; border:none; }
.btn-error.outline:hover{ color:var(--red-color); background:#ffffff; border:none; }

.btn-warning.outline{ color:#faaa1a; background:#ffffff; border-color:#faaa1a;}
.btn-warning.outline span{ color:#faaa1a; }
.btn-warning.outline .fas{ color:#faaa1a; }
.btn-warning.outline:hover{ color:#d78f0d; background:#ffffff; border-color:#d78f0d; }

.btn.disabled{ opacity:.35!important; cursor:not-allowed!important; }

/* TOOLBAR */
.toolbar{ position:fixed; top:39px; right:0; width:calc( 100vw - var(--menu-width) ); margin-bottom:35px; background:var(--grey-ultralight-color); padding:15px 60px; border-bottom:solid 1px var(--grey-light-color); z-index:7900; }
.toolbar .btn{ margin-left:15px; }
.toolbar .btn.green{ background:var(--green-color); color:#ffffff; border-color:var(--green-color); }
.toolbar .btn.green span{ color:#ffffff; }
.toolbar .btn.green .fas{ color:#ffffff; }
.toolbar .btn.green:hover{ background:var(--green-dark-color); }
#dashboard .toolbar{ margin:15px 3%; }
.toolbar input{ padding:4px 8px 3px 8px; background:var(--main-light-color); border:none; font-size:18px; }
.toolbar input::placeholder{ color:var(--main-color); }
.toolbar input[type="month"]{ border:none; text-transform:capitalize; cursor:pointer; padding:4px 8px 4px 10px;  }
.toolbar .input-row{ position:relative; display:inline-block; }
.toolbar .input-row .btn{ margin-left:0; font-size:11px; background:transparent; }
.toolbar select{ padding:7px 5px 6px 5px; background:var(--main-light-color); border:none; margin-right:15px; min-width:80px; max-width:110px; }

/* FORMS */
.form{ width:90%; margin:0 auto; }
#login .form{ max-width:420px; position:fixed; top:0; left:0; height:100vh; display:block; background:#ffffff; padding:15px; box-shadow:0 0 7px 0 rgba(0,0,0,0.35); }
#login .form .logo-wrapper{ margin:40px 0 125px 0; }
.form h4{ margin-bottom:20px; margin-top:50px; font-size:16px; user-select:none; text-transform:uppercase; }
.form h4:first-child{ margin-top:0; }
.form form{ padding:15px; background:#ffffff; }
.form .form-row{ margin-bottom:20px; }
.form .form-label{ margin-bottom:10px; color:var(--main-color); user-select:none; }
.form .form-label *{ user-select:none; }
.form input, .form select, .form textarea{ padding:5px 5px; border-radius:3px; border:solid 1px #ddd; width:100%; }
.form input{ padding:7px 7px; }
.form select{ padding:7px 5px 6px 5px; border-radius:3px; border:solid 1px #ddd; width:100%; }
.form input[type="checkbox"], .form input[type="radio"]{ width:auto; position:relative; top:2px; }

.form input.input-2x, .form select.input-2x{ padding:5px 5px; border-radius:3px; border:solid 1px #ddd; width:49%; }
.form input.input-3x, .form select.input-3x{ padding:5px 5px; border-radius:3px; border:solid 1px #ddd; width:30%; }

.form .form-row-submit{ position:fixed; margin:0; text-align:right; background:var(--grey-ultralight-color); left:var(--menu-width); bottom:0; width:calc(100vw - var(--menu-width)); padding:15px 60px; border-top:solid 1px var(--grey-light-color); }
.form .form-row-submit .btn-cancel{ float:left; }

.form .form-message{ font-weight:bold; font-style:italic; font-size:16px; margin:20px 0 35px 0; color:var(--main-medium-color); text-align:center; }

.form .form-input label.error{ color:var(--red-color); font-size:10px; display:block; margin:5px 0; }

/* GRID */
.grid .grid-item{ display:inline-block; vertical-align:top; width:150px; padding:35px 15px; margin:15px; background:var(--grey-ultralight-color); border-radius:7px; position:relative; }
.grid .grid-item .actions{ padding:5px; }
.grid .grid-item .actions.top-left{ position:absolute; top:0; left:0; }
.grid .grid-item .actions.top-right{ position:absolute; top:0; right:0; }
.grid .grid-item .actions.bottom-left{ position:absolute; bottom:0; left:0; }
.grid .grid-item .actions.bottom-right{ position:absolute; bottom:0; right:0; }
.grid .grid-item .title{ display:flex; justify-content:center; align-items:center; height:60px; font-weight:bold; width:100%; text-align:center; color:var(--main-color); }
.grid .grid-item .subtitle{ text-align:center; height:20px; font-size:12px; }
.grid .grid-item .discount{ font-size:10px; padding:3px; border-radius:3px; }
.grid .grid-item .actions .btn{ display:none; }
.grid .grid-item:hover .actions .btn{ display:inline-block; }
.grid .grid-item .btn{ padding:4px; font-size:10px; }
.grid .grid-item .btn .fas{ margin:0; }
.grid .grid-item .show_products{ font-size:9px; margin-left:5px; }

/* TABLES */
.table{ user-select:none; background:#ffffff; padding:10px 15px 15px 15px; min-height:320px; }
.table table{ width:100%; border-spacing:0; text-align:left; user-select:none; }
.table table td, .table table th{ padding:10px 10px; vertical-align:middle; }
.table table th{ padding:5px 10px 15px 10px; user-select:none; }
.table table th.tools{ width:92px; }
#bills .table table th.tools, #estimates .table table th.tools, #contracts .table table th.tools, #creditnotes .table table th.tools{ width:130px; }
.table table tbody tr{ background:#ffffff; transition:background 0.3s; }
.table table tbody tr:hover{ background:var(--main-light-color); }
.table table tbody tr:nth-child(2n+1){ background:var(--main-ultralight-color); }
.table table tbody tr:nth-child(2n+1):hover{ background:var(--main-light-color); }

.table table tbody tr.bg-red{ background:rgba(196, 91, 91, 0.17); }
.table table tbody tr.bg-red:hover{ background:rgba(196, 91, 91, 0.24); }

.table table tbody tr.disabled{ opacity:0.15; }

.table .btn{ padding:6px 10px; font-size:12px; position:relative; top:-1px; min-width:32px; text-align:center; }
.table .btn .fas{ margin-right:0; font-size:11px; }

/* PANEL ACIONS */
.panel-actions{ visibility:hidden; position:fixed; top:0; right:-102vw; height:100vh; width:380px; max-width:100vw; overflow-x:hidden; box-shadow:0 0 5px 0 rgba(0,0,0,.25); z-index:7902; background:#ffffff; padding:50px 25px 75px; transition:right .3s; cursor:default; text-align:left; clear:both; }
.btn-panel-hdl{ margin-left:8px; }
.panel-backdrop{ position:fixed; top:0; right:-100vw; height:100vh; width:100vw; background:rgba(0,0,0,.15); z-index:7901; }
.panel-actions.open{ visibility:visible; right:0; }
.panel-backdrop.open{ right:0; }
.panel-actions .btn-close{ display:inline-block; font-size:14px; margin-bottom:30px; padding:10px 0; color:var(--red-color); cursor:pointer; }
.panel-actions h2{ font-size:17px; margin-bottom:25px; }
.panel-actions .infos{ margin-bottom:50px; }
.panel-actions .infos div{ margin-bottom:10px; }
.panel-actions .infos label{ display:inline-block; width:80px; vertical-align:top; }
.panel-actions .infos span{ display:inline-block; width:calc(100% - 80px); color:var(--main-medium-color); vertical-align:top; }
.panel-actions .infos span small{ font-size:65%; }
.panel-actions .separator{ height:20px; }
.panel-actions .actions .btn{ display:block; font-size:14px; margin-bottom:8px; text-align:left; padding:8px 10px; }
.panel-actions .actions .btn i{ display:inline-block; width:20px; text-align:center; margin-right:5px; }


/* TABS */
.tabs .tab-header{ display:inline-block; border:solid 1px var(--main-medium-color); border-bottom:none; border-radius:5px 5px 0 0; padding:13px 23px; margin-right:2px; cursor:pointer; }
.tabs .tab-header.active{ border-color:var(--main-medium-color); cursor:default; background:var(--main-medium-color); color:#ffffff; }
.tabs .tab-header .fa{ margin-right:7px; margin-left:-7px; }
.tabs .tab-contents{ border:solid 1px var(--main-medium-color); padding:25px; }
.tabs .tab{ display:none; }
.tabs .tab.active{ display:block; }

/* CALCGRID */
.calcgrid-toolbar{ padding:25px 15px 15px 55px; }
.calcgrid-toolbar .btn{ margin-right:5px; }
.calcgrid-toolbar .btn .fas{ color:var(--main-color); }
.calcgrid{ background:#ffffff; padding:10px; }
.calcgrid.table th{ padding:0; user-select:none; }
.calcgrid.table .calcgrid-group th{ padding:15px 5px 0px; user-select:none; }
.calcgrid.table textarea{ display:inline-block; min-width:250px; }
.calcgrid.table input{ padding:5px; }
.calcgrid.table input, .calcgrid.table select{ display:inline-block; width:50px; text-align:right; }
.calcgrid.table td{ vertical-align:top; }
.calcgrid.table tbody td:first-child{ width:32px; text-align:center; }
.calcgrid.table tbody td:first-child .fas{ color:rgb(244, 45, 92, 0.37); margin-top:5px; }
.calcgrid.table tbody td:nth-child(2) input{ width:100%; text-align:left; }
.calcgrid.table tbody td select{ padding:4px 5px; }
.calcgrid.table tbody .btn, .calcgrid.table .calcgrid-group .btn{ padding:5px 0 6px 0; font-size:15px; width:24px; min-width:24px; display:inline-block; text-align:center; line-height:10px; }
.calcgrid.table tbody .btn .fas, .calcgrid.table .calcgrid-group .btn .fas{ font-size:10px; margin-right:0; line-height:10px; color:var(--main-color); }
.calcgrid.table .calcgrid-group .btn.details_btn_remove .fas{ color:#a80c31; }
.calcgrid.table tr{ background:#fff!important; }

.calcgrid.table .calcgrid-group-subtotal{ margin-top:4px; display:inline-block; color:var(--main-color); }
.calcgrid.table .calcgrid-group:not(.open) thead input{ background:none; user-select:none; pointer-events:none; border:none; font-weight:bold; }
.calcgrid.table .calcgrid-group thead .btn.details_btn_toggle{ width:30px; }
.calcgrid.table .calcgrid-group tbody,
.calcgrid.table .calcgrid-group tr td:last-child,
.calcgrid.table .calcgrid-group tr:nth-child(2),
.calcgrid.table .calcgrid-group.open .btn.details_btn_toggle.open,
.calcgrid.table .calcgrid-group .btn.details_btn_toggle.close,
.calcgrid.table .calcgrid-group .btn.details_btn_remove,
.calcgrid.table .calcgrid-group .btn.details_btn_duplicate{ display:none; }
.calcgrid.table .calcgrid-group.open tbody{ display:table-row-group; }
.calcgrid.table .calcgrid-group.open tr:nth-child(2){ display:table-row; }
.calcgrid.table .calcgrid-group.open tr td:last-child{ display:table-cell; }
.calcgrid.table .calcgrid-group.open .btn.details_btn_toggle.close,
.calcgrid.table .calcgrid-group.open .btn.details_btn_remove,
.calcgrid.table .calcgrid-group.open .btn.details_btn_duplicate{ display:inline-block; opacity:1; }

.calcgrid.table tr[type="heading"] input.details_name{ color:var(--main-medium-color); text-transform:uppercase; }
.calcgrid.table thead input.group_name{ color:var(--main-medium-color); text-transform:uppercase; }

.calcgrid .details_subtotal{ display:inline-block; line-height:28px; height:28px; }
.calcgrid .details_discount_amount, .calcgrid .details_vat_amount, .calcgrid .details_subtotal_taxincluded{ color:var(--main-color); text-align:right; padding-right:21px; font-size:10px; margin-top:2px; }
.calcgrid .details_discount_amount_wrapper{ font-size:10px; padding-right:21px; }
.calcgrid tfoot .details_discount_amount_wrapper{ font-size:10px; padding:0; text-align:left; }
.calcgrid .details_discount_amount{ font-size:10px; padding:0; border:none; }
.calcgrid tfoot .details_discount_amount{ background:none; }
.calcgrid .details_subtotal_taxincluded{ color:var(--main-color); text-align:right; padding-right:0; font-size:10px; }

.calcgrid .calcgrid-group{ width:100%; border:solid 1px var(--grey-light-color); padding:5px; border-radius:5px; }
.calcgrid .calcgrid-group thead td{ background:var(--main-light-color); }
.calcgrid .calcgrid-group thead tr:first-child td{ cursor:pointer; }
.calcgrid .calcgrid-group.open thead tr:first-child td{ cursor:default; }
.calcgrid .calcgrid-group tbody{ min-height:50px; }
.calcgrid .calcgrid-group tbody:before{ content:' '; }
.calcgrid .calcgrid-group tbody .empty td{ padding:4px; }

.calcgrid #details_legal_notes{ width:100%; text-align:left; }

/* DASHBOARD */
.dashboard-blocks{ padding:0 15px; }
.dashboard-blocks h3{ font-weight:100; color:var(--main-medium-color); font-size:16px; text-align:left; margin-left:2%; margin-bottom:15px; margin-top:25px; opacity:0.55; }
.dashboard-block{ display:inline-block; width:30%; margin:15px 1.5%; height:105px; text-align:center; background:#ffffff; border-radius:15px; vertical-align:top; transition:background 0.3s; }
.dashboard-block .fas{ display:block; font-size:30px; opacity:0.75; margin-bottom:20px; margin-top:25px; color:var(--main-medium-color); transition:opacity 0.3s; }
.dashboard-block span{ font-size:13px; text-transform:uppercase; opacity:0.85; transition:opacity 0.3s; }

.dashboard-block:hover .fas{ opacity:1; }
.dashboard-block:hover span{ opacity:1; }

/* DASHBOARD FINANCIAL */
.dashboard_financial .block{ background:#ffffff; margin:15px 3% 25px 3%; padding:10px 15px 15px 15px; min-height:140px; width:100%; float:left; }
.dashboard_financial .block h4{ font-size:17px; padding-top:3px; margin-bottom:15px; user-select:none; text-transform:uppercase; color:var(--main-color); padding-bottom:10px; }
.dashboard_financial .block h4 .fas{ margin-right:5px; }
.dashboard_financial .block table tr td:first-child{ padding:3px 15px 3px 0; vertical-align:top; }
.dashboard_financial .block table tr td:last-child,
.dashboard_financial .block table tr td:last-child b{ color:var(--main-color); }
.dashboard_financial .block.retarded table tr td:last-child{ color:var(--main-dark-color); }
.dashboard_financial .block ul{ padding-left:0; list-style:none; }
.dashboard_financial .block ul li{ padding-left:0; color:#c45b69; margin-bottom:4px; }
.dashboard_financial .block ul li a{ padding:2px 0; display:inline-block; }
.dashboard_financial .block ul li.orange a{ color:#faaa1a; }
.dashboard_financial .block ul li.orange small{ color:#faaa1a; }
.dashboard_financial .block ul li a:hover, .dashboard_financial .block ul li a:hover small{ color:var(--main-dark-color); }

.dashboard_financial .block.retarded table.bills{ width:100%; }
.dashboard_financial .block.retarded table.bills thead td{ border-bottom:solid 1px #f2f2f2; }
.dashboard_financial .block.retarded table.bills td{ font-size:12px; }
.dashboard_financial .block.retarded table.bills tbody tr:hover td{ background:rgba(0,0,0,0.025); }
.dashboard_financial .block.retarded table.sumup tr td:first-child{ min-width:90px; width:90px; }
.dashboard_financial .block.retarded table.sumup tr td:nth-child(2){ min-width:110px; width:110px; }
.dashboard_financial .block.retarded table.bills tr td:first-child, .dashboard_financial .block.retarded table.bills tr td:nth-child(4){ min-width:80px; width:80px; }

.dashboard_financial .block.half{ width:calc( 44% - 3px ); }
.dashboard_financial .block.tiers{ width:calc( 27.3% - 3px ); }
.dashboard_financial .tiers{ padding-left:3%; }
.dashboard_financial .tiers-2{ width:calc( 63.6% - 3px ); display:inline-block; vertical-align:top; padding-right:3%; }
.dashboard_financial .block.big{ min-height:310px; }
.dashboard_financial .block.big hr{ margin:15px 0; border:none; border-top:solid 1px #eaecec; }

.dashboard_financial .block .btn{ padding:5px 0 6px 0; font-size:15px; width:24px; display:inline-block; text-align:center; line-height:10px; float:right; }
.dashboard_financial .block .btn .fas{ font-size:10px; margin-right:0; line-height:10px; }

.dashboard_financial .block.yearly-sumup table.bills thead tr td,
.dashboard_financial .block.yearly-sumup table.expenses thead tr td{ font-weight:bold; border-bottom:solid 1px #ccc; }
.dashboard_financial .block.yearly-sumup table.bills,
.dashboard_financial .block.yearly-sumup table.expenses{ width:100%; background:#ffffff; }
.dashboard_financial .table-wrapper{ height:18vh; overflow-y:auto; }

/* MODAL */
.modal{ position:fixed; top:0; left:0; background:rgba(50, 58, 69, .2); width:100vw; height:100vh; z-index:7999; overflow:auto; overflow-x:hidden; }
.modal-body{ background:#ffffff; padding:25px; border-radius:3px; width:540px; margin:100px auto 100px auto; box-shadow:0px 1px 5px 0 rgba(0,0,0,.25); }
.modal-body .form{ width:100%; }
.modal-body .form form{ background:#ffffff; padding:0 0 15px 0; border:none; box-shadow:none; }
.modal-body.hasIframe{ width:calc(100vw - (var(--menu-width) *2)); margin: 50px calc(var(--menu-width) * 0.5) 50px calc(var(--menu-width) * 1.5); height:calc(100vh - 100px); }
.modal-body.hasIframe .btns-wrapper{ margin-top:-10px; margin-bottom:25px; }

/* CONFIRM */
.btns-wrapper{ margin-top:20px; height:20px; }
.icon-wrapper, .content-wrapper{ display:inline-block; vertical-align:top; }
.icon-wrapper{ padding-right:15px; }
.content-wrapper{ width:calc( 340px - 86px ); }
.icon-wrapper .fas{ font-size:20px; color:var(--main-medium-color); }

/* TICKETS */
.ticket-block-wrapper{ margin-bottom: 50px;}
.ticket-block, .ticket-response-block{ padding:15px; background:#ffffff; border:solid 1px #ddd; border-radius:5px; margin-bottom:25px; }
.form h4.ticket-subject{ color:var(--main-color); margin:0; font-size:18px; margin:10px 0 25px 0; }
.ticket-date{ color:var(--main-medium-color); margin-bottom:5px; font-size:11px; }
.ticket-emails{ color:var(--main-medium-color); margin-bottom:25px; font-size:11px; }
.ticket-description{ border-left:solid 2px var(--main-medium-color); padding:10px 15px; margin:10px 0 15px 0; background:var(--grey-ultralight-color); }
.ticket-image{ padding:10px 15px; margin:10px 0 15px 0; }

.ticket-response-block{ width:70%; padding-top:25px; }
.ticket-response-block .ticket-date{ float:right; }
.ticket-response-block.support{ background:#dcebea; }
.ticket-response-block.customer{ margin-left:30%; }

.ticket-close-block{ text-align:center; margin:25px 0; padding:15px 0; }
.ticket-close-block .btn{ margin:10px 20px; padding:15px 25px 15px 15px; }
.ticket-close-block .btn .fas{ padding-right:10px; }

/* TREASURY */
.treasury .block{ background:var(--main-ultralight-color); margin:15px 3% 25px 3%; padding:10px 15px 15px 15px; min-height:140px; width:100%; float:left; }
.treasury .block h4{ font-size:17px; padding-top:3px; margin-bottom:15px; user-select:none; text-transform:uppercase; color:var(--main-color); padding-bottom:10px; }
.treasury .block h4 .fas{ margin-right:5px; }

.treasury .block .btn{ padding:5px 0 6px 0; font-size:15px; width:24px; display:inline-block; text-align:center; line-height:10px; float:right; }
.treasury .block .btn .fas{ font-size:10px; margin-right:0; line-height:10px; }

.treasury table{ width:100%; }
.treasury .block table tr td:first-child{ padding:3px 15px 3px 0; vertical-align:top; }
.treasury .block.retarded table tr td:last-child{ color:var(--main-dark-color); }
.treasury .block ul{ padding-left:0; list-style:none; }
.treasury .block ul li{ padding-left:0; color:#c45b69; margin-bottom:4px; }
.treasury .block ul li a{ padding:2px 0; display:inline-block; }
.treasury .block ul li.orange a{ color:#faaa1a; }
.treasury .block ul li.orange small{ color:#faaa1a; }
.treasury .block ul li a:hover, .treasury .block ul li a:hover small{ color:var(--main-dark-color); }

/* CONTRACTS */
.contract-tags{ padding:0 15px; }
.contract-tags .tags-desc{ font-size:10px; margin:10px 0 20px 0; }
.contract-tags .tags-title{ font-weight:bold; margin:20px 0 10px 0; }
.contract-tags ul{ list-style:none; }
.contract-tags ul li{ margin-bottom:3px; }

/* DOCUMENTS */
.document-note *{ user-select:text; }

/* EXPENSES */
.vats{ padding:15px; background:var(--main-ultralight-color); border:solid 1px rgba(0,0,0,0.15); border-radius:3px; }
.vat-row{ margin-bottom:5px; }
.vat-row .btn{ margin-right:5px; }
.vat-row .btn i{ margin-right:0; }
.vat-row .vat-cell{ display:inline-block; margin-right:10px; }
.vat-row .vat-cell label{ margin-right:5px; font-size:12px; }
.vat-row .vat-cell input{ display:inline-block; width:80px; margin-right:4px; padding:5px; }

/* TASKS */
.date-range span, .date-range input{ display:inline-block; }
.date-range span{ margin-right:10px; }
.date-range input{ width:125px; margin-right:15px; }
.date-range select{ width:260px; margin-right:15px; }

/* PLAYBOOKMODEL */
.playbookmodel-container{ padding:0 15px 60px 15px; }
.playbookmodel-container .playbookmodel-toolbar,
.playbookmodel-container .playbookmodel-fields{ margin:15px 0 25px 0; }
.playbookmodel-container .playbookmodel-toolbar{ margin-top:45px; text-align:center; }
.playbookmodel-container .playbookmodel-fields .wrapper{ margin-bottom:15px; }
.playbookmodel-container .playbookmodel-fields .wrapper.wrapper-section{ padding-top:25px; }
.playbookmodel-container .playbookmodel-fields .wrapper.wrapper-field{ padding-left:30px; }
.playbookmodel-container .playbookmodel-fields .wrapper .wrapper-hdl{ color:rgba(0,0,0,0.4); margin-right:15px; }
.playbookmodel-container .playbookmodel-toolbar .btn{ margin-right:10px; }
.playbookmodel-container .playbookmodel-fields input{ width:calc(100% - 100px); margin-right:10px; display:inline-block; }
.playbookmodel-container .playbookmodel-fields .wrapper.wrapper-section input{ font-weight:bold; text-transform:uppercase; }

/* PLAYBOOKRUN */
.empty-msg{ text-align:center; margin:25px 0; }
.playbookrun-wrapper{ padding:0 15px 15px 15px; }
.playbookrun-wrapper .wrapper.wrapper-section{ margin:30px 0 18px 0; font-weight:bold; text-transform:uppercase; }
.playbookrun-wrapper .wrapper.wrapper-field{ margin-bottom:15px; padding-left:15px; }
.playbookrun-wrapper .wrapper.wrapper-field label{ cursor:pointer; padding:3px 10px; }
.playbookrun-wrapper .wrapper.wrapper-field input{ margin-right:10px; }

/* PROJECT */
.project-form.add .hide-on-add{ display:none; }
.project-form form h3{ text-align:left; text-indent:20px; font-size:16px; }
.project-form #interventions,
.project-form #expenses{ display:none; }
.project-form .table{ min-height:auto; margin-bottom:25px; }
.project-form .table tr td{ vertical-align:top; }
.project-form .table .project-calc-label{ display:inline-block; max-width:calc(100% - 35px);margin-right:5px; }
.project-form .table .project-calc-date{ max-width:110px; }
.project-form .table .project-calc-price{ max-width:70px; }
.project-form .table .project-calc-qty{ max-width:50px; }
.project-form .table .project-calc-qty-type{ display:inline-block; max-width:80px; }

.project-form .table thead th:nth-child(1){ width:110px; }
.project-form .table thead th:nth-child(2){ width:90px; }
.project-form .table thead th:nth-child(4){ width:90px; }
.project-form .table thead th:nth-child(5){ width:155px; }
.project-form .table thead th:nth-child(6){ width:100px; }
.project-form .table thead th:nth-child(7){ width:60px; }

.project-form .table .project-tasks thead th:nth-child(1){ width:110px; }
.project-form .table .project-tasks thead th:nth-child(2){ width:200px; }
.project-form .table .project-tasks thead th:nth-child(3){ width:auto; }
.project-form .table .project-tasks thead th:nth-child(4){ width:110px; }
.project-form .table .project-tasks thead th:nth-child(5){ width:90px; }

.project-form table thead th{ border-bottom:solid 1px; }
.project-form.add .col-1{ width:50%; margin-left:25%; }
.project-form.edit .col-1{ padding:10px; background:var(--main-ultralight-color); }

.project-form .project-sumup{ margin-bottom:50px; }
.project-form .project-sumup-block{ display:inline-block; width:calc(25% - 35px); margin:5px 15px; background:#f3fff0; border:solid 1px #40c714; border-radius:3px; padding:10px 25px; text-align:center; }
.project-form .project-sumup-block label{ display:block; margin-bottom:5px; color:#40c714 }
.project-form .project-sumup-block div{ display:block; font-size:16px; font-weight:bold; }
.project-form .project-sumup-block div span{ margin-right:5px; }

/* TABS */
.tab-content{ display:none; }
.tab-content.active{ display:block; }

/* LOGIN */
#login nav.menu, #login nav.mobile-menu{ display:none; }
#login main.main{ width:100vw; left:0; background:none!important; }
#login .form form#login-form .form-row-submit{ position:initial; background:none; border:none; width:100%; padding:0; }
#login .logo-wrapper{ text-align:center; }
#login .logo-wrapper img{ max-width:250px; }
#login .form form{ width:80%; margin:25px auto 0 auto; }
#login .maintain{ font-size:11px; margin-top:5px; display:inline-block; cursor:pointer; }

/* UTILS */
.hidden{ display:none!important; }
.bold{ font-weight:bold; }
.pointer, .btn.disabled.pointer{ cursor:pointer!important; }
.no-pointer{ cursor:default!important; }
.mr0{ margin-right:0px!important; }
.mr5{ margin-right:5px!important; }
.mr10{ margin-right:10px!important; }
.mr15{ margin-right:15px!important; }
.mr25{ margin-right:25px!important; }
.mb0{ margin-bottom:0px!important; }
.mb5{ margin-bottom:5px!important; }
.mb10{ margin-bottom:10px!important; }
.mb15{ margin-bottom:15px!important; }
.mb25{ margin-bottom:25px!important; }
.mb35{ margin-bottom:35px!important; }
.mb40{ margin-bottom:40px!important; }
.mb45{ margin-bottom:45px!important; }
.mb50{ margin-bottom:50px!important; }
.mt0{ margin-top:0px!important; }
.mt5{ margin-top:5px!important; }
.mt10{ margin-top:10px!important; }
.mt15{ margin-top:15px!important; }
.mt25{ margin-top:25px!important; }
.ml0{ margin-left:0px!important; }
.ml5{ margin-left:5px!important; }
.ml10{ margin-left:10px!important; }
.ml15{ margin-left:15px!important; }
.ml25{ margin-left:25px!important; }
.pt0{ padding-top:0px!important; }
.p0{ padding:0!important; }
.center{ text-align:center!important; }
.left{ text-align:left!important; }
.right{ text-align:right!important; }
.float-left{ float:left!important; }
.float-right{ float:right!important; }
.half{ width:calc( 50% - 2px ); display:inline-block; vertical-align:top; }
.tiers{ width:calc( 33.3% - 3px ); display:inline-block; vertical-align:top; }
.tiers-2{ width:calc( 66.6% - 3px ); display:inline-block; vertical-align:top; }
.quarter{ width:calc( 25% - 3px ); display:inline-block; vertical-align:top; }
.quarter-3{ width:calc( 75% - 3px ); display:inline-block; vertical-align:top; }
.bg-grey{ background:var(--main-light-color); }
.selectable{ user-select:text!important; }
.italic{ font-style:italic; }
.disabled{ opacity:0.5; pointer-events:none; }
div.disabled{ pointer-events:all; }
.noborder{ border:none!important; }

.main{ color:var(--main-color)!important; }
.blue{ color:var(--main-medium-color)!important; }
.orange{ color:#f2a212!important; }
.red{ color:var(--red-color)!important; }
.green{ color:#40c714!important; }
.black{ color:var(--main-dark-color)!important; }

.inline-block{ display:inline-block!important; }
.strike{ text-decoration:line-through!important; }

.row{ display:block; clear:both; margin:0 -15px; }
.col-1{ display:inline-block; width:calc(100% / 4 - 10px); padding:0 15px; vertical-align:top; }
.col-2{ display:inline-block; width:calc(100% / 4 * 2 - 10px); padding:0 15px; vertical-align:top; }
.col-3{ display:inline-block; width:calc(100% / 4 * 3 - 10px); padding:0 15px; vertical-align:top; }
.col-4{ display:inline-block; width:calc(100% - 10px); padding:0 15px; vertical-align:top; }
.col-8p{ display:inline-block; width:calc(8% - 10px); padding:0 15px; vertical-align:top; }
.col-17p{ display:inline-block; width:calc(17% - 10px); padding:0 15px; vertical-align:top; }
.col-25p{ display:inline-block; width:calc(25% - 10px); padding:0 15px; vertical-align:top; }
.col-33p{ display:inline-block; width:calc(33% - 10px); padding:0 15px; vertical-align:top; }
.col-50p{ display:inline-block; width:calc(50% - 10px); padding:0 15px; vertical-align:top; }
.col-66p{ display:inline-block; width:calc(66% - 10px); padding:0 15px; vertical-align:top; }
.col-75p{ display:inline-block; width:calc(75% - 10px); padding:0 15px; vertical-align:top; }

/* SummerNote */
.note-editor.note-airframe.fullscreen, .note-editor.note-frame.fullscreen{ left:var(--menu-width); height:100vh; width:calc( 100vw - var(--menu-width) ); background:#ffffff; z-index:9999; }
.note-editor.note-airframe, .note-editor.note-frame{ background:#ffffff; border:solid 1px #ddd; }
.note-toolbar{ background:var(--grey-ultralight-color); }
.note-editor.note-airframe .note-statusbar, .note-editor.note-frame .note-statusbar{ border-top:solid 1px #ddd; background:var(--grey-ultralight-color); }

/* Chosen */
.chosen-container-single .chosen-single{ border-radius:3px; border:solid 1px #ddd; background:#ffffff; box-shadow:none; padding:3px 8px; height:32px; }
.chosen-container-active.chosen-with-drop .chosen-single{ background:#ffffff; }
.chosen-container .chosen-results li.result-selected{ color:var(--main-medium-color); }
.chosen-container .chosen-results li.highlighted{ background:var(--main-medium-color); }
.chosen-container .chosen-results li.result-selected.highlighted{ color:#ffffff; }
.chosen-container-single .chosen-single span{ font-size:14px; }
.chosen-container-single .chosen-single div{ top:4px; }
.chosen-container-active .chosen-choices, .chosen-container-multi .chosen-choices{ border:solid 1px #ddd; box-shadow:none; background:#ffffff; padding:4px 5px; border-radius:3px; }
.chosen-container-multi .chosen-choices li.search-choice{ background:var(--main-medium-color); border-color:var(--main-color); box-shadow:none; }
.chosen-container-multi .chosen-choices li.search-choice span{ color:#ffffff; }

.modal-body .chosen-container{ width:100%!important; }

/* Tagify */
.tagify{ background:#ffffff; border-radius:3px; }

/* Upload Image */
.upload-image-container{ padding:15px; width:100%; }
.upload-image-wrapper{ padding:15px; width:100%; text-align:center; border:solid 1px #ddd; background:#ffffff; border-radius:3px; position:relative; min-height:61px; }
.upload-image-wrapper .btn-delete-image{ margin-left:10px; }
.upload-image-wrapper .btn-delete-image .fas{ margin-right:0; }
.upload-image-wrapper .preview-image{ max-height:26px; }

.upload-image-wrapper .buttons{ position:absolute; width:100%; padding:5px; left:0; bottom:10px; background:#ffffff; }
.upload-image-container.hasFile .upload-image-wrapper{ background:var(--main-ultralight-color); }
.upload-image-container.hasFile .upload-image-wrapper .buttons{ display:none; width:calc(100% + 2px); bottom:auto; top:58px; left:-1px; border:solid 1px rgba(0,0,0,.15); border-radius:0 0 3px 3px; background:#fcfcfc; }
.upload-image-container.hasFile:hover .upload-image-wrapper .buttons{ display:block; }

/* Upload File */
.upload-file-container{ padding:15px; width:240px; }
.upload-file-wrapper{ padding:15px; width:100%; text-align:center; border:solid 1px rgba(0,0,0,.15); background:#ffffff; border-radius:3px; position:relative; min-height:61px; }
.upload-file-preview-wrapper{ padding:5px 10px; min-width:60px; min-height:65px; display:inline-block; }
.upload-file-wrapper .btn-delete-file{ margin-left:10px; }
.upload-file-wrapper .btn-delete-file .fas{ margin-right:0; }
.upload-file-wrapper img{ max-width:100%; max-height:120px; }

.upload-file-wrapper .buttons{ position:absolute; width:100%; padding:5px; left:0; bottom:10px; background:#ffffff; }
.upload-file-wrapper .buttons .btn{ font-size:12px; }
.upload-file-container.hasFile .upload-file-wrapper{ background:var(--main-ultralight-color); min-height:100px; }
.upload-file-container.hasFile .upload-file-wrapper .buttons{ width:calc(100% + 2px); bottom:-1px; left:-1px; border:solid 1px rgba(0,0,0,.15); border-radius:0 0 3px 3px; background:#fcfcfc; }


/* Zoomable */
.zoomable{ max-width:250px; cursor:zoom-in; }
.zoomable.zoom{ max-width:inherit; cursor:zoom-out; }

/* jSignture */
#input-signature-reset{ margin-top:-15px; padding:2px 6px 2px 8px; margin-bottom:-18px; }
#input-signature-reset .fas{ margin-right:3px; }
.jSignature{ border:solid 1px #ddd!important; border-radius:3px; margin-top:10px!important; min-height:200px; }
#signature-message{ padding-top:15px; margin-bottom:-20px; font-size:10px; }
#signature-message *{ color:#ff4269; }

/* Tooltip */
.ui-widget-shadow{ box-shadow:0px 2px 2px 0 rgba(0,0,0,.35); }
.ui-tooltip.ui-widget.ui-widget-content{ background:#fff2b4; border:none; border-radius:0; }
.ui-tooltip.ui-widget.ui-widget-content *{ font-size:11px; }

/* FullCalendar */
#tasks-calendar{ margin-top:25px!important; }
#customer-planning #tasks-calendar{ padding:0 35px; }
.fc .fc-toolbar-title{ color:var(--main-color)!important; }
.fc .fc-day-other, .fc .fc-list-empty{ opacity:0.2; background:var(--main-light-color)!important; }
.fc .fc-button-primary{ color:var(--main-dark-color)!important; border:solid 1px #ddd!important; background:var(--grey-ultralight-color)!important; box-shadow:none!important; }
.fc .fc-button-primary:hover, .fc .fc-button-primary.fc-button-active{ background:var(--main-medium-color)!important; color:#fff!important; }
.fc .fc-non-business{ background:var(--main-ultralight-color)!important; }
.fc-view-harness{ background:#ffffff; min-height:338px; }
.fc-view-harness .fc-event-time{ display:none; }
.fc-header-toolbar .fc-toolbar-title{ text-transform:capitalize; }
.fc-footer-toolbar{ display:none!important; }
.fc-theme-standard .fc-scrollgrid, .fc .fc-button-primary{ border:none!important; }
.fc-theme-standard td, .fc-theme-standard th, .fc-theme-standard .fc-list{ border:solid 1px var(--main-light-color)!important; }
.fc-theme-standard .fc-list-day-cushion{ background:var(--grey-ultralight-color)!important; }
.fc-theme-standard .fc-list td{ border:none!important; }
.fc .fc-daygrid-day.fc-day-today{ background:#fff2b4!important; }
.fc .fc-daygrid-day.fc-day-today .fc-daygrid-day-number{ color:var(--main-color)!important; }

/* FileManager */
.filemanager-file{ margin:15px 8px; height:70px; width:100px; text-align:center; display:inline-block; vertical-align:top; cursor:pointer; transition:background 0.3s; }
.filemanager-file:hover{ background:var(--main-light-color); }
.filemanager-file i{ font-size:36px; display:inline-block; margin:7px 0; }
.filemanager-file .title{ font-size:10px; max-width:100%; text-overflow:ellipsis; overflow:hidden; white-space:nowrap; margin:0 7px; }
