/*
 ************************************************************
 *
 * BACKEND
 *
 ************************************************************
 * ----------------------------------------------------------
 *
 * GLOBAL
 *
 * ----------------------------------------------------------
 *
 * BASE */

:root
{
	--font-body: "Montserrat";
	--color-white: #ffffff;
	--color-black: #000000;
	--color-green: #4caf50;
	--color-yellow: #ffc042;
	--color-red: #ff4c4c;
	--color-rose: #f7ddda;
	--color-blue-1: #032097;
	--color-blue-2: #01166B;
	--color-gray-1: #858ebd;
	--color-gray-2: #555e94;
	--color-gray-3: #485184;
	--color-lightgray-1: #f9fafc;
	--color-lightgray-2: #f3f4f9;
	--color-lightgray-3: #ecedf4;
	--color-lightgray-4: #dadce9;
}

body
{
	font-family: var(--font-body);
	font-weight: 300;
	color: var(--color-gray-2);
}

a,
i,
tr,
th,
td,
span,
strong,
input,
select,
textarea,
button,
.button,
path,
rect,
circle
{
	transition-property: opacity, fill, color, border-color, background-color, display;
	transition-duration: .3s;
	transition-timing-function: ease;
}

h1,
h2,
h3,
h4,
h5,
h6
{
	font-weight: 600;
	margin: 0;
}

i
{
	font-size: 16px;
}

a
{
	text-decoration: none;
}

a i,
a .fa-solid,
a .fa-regular,
a:focus i,
a:focus .fa-solid,
a:focus .fa-regular
{
	color: var(--color-gray-1);
}

a,
a:focus,
a:hover,
a:hover i
{
	color: var(--color-blue-1);
}

/*
 * ----------------------------------------------------------
 *
 * FORM
 *
 * ----------------------------------------------------------
 *
 * INPUT */

::-webkit-input-placeholder
{
	opacity: 1;
	color: var(--color-gray-1);
}

::-moz-placeholder
{
	opacity: 1;
	color: var(--color-gray-1);
}

:-ms-input-placeholder
{
	opacity: 1;
	color: var(--color-gray-1);
}

:-moz-placeholder
{
	opacity: 1;
	color: var(--color-gray-1);
}

input,
select,
textarea
{
	font-size: 13px;
	margin: 0;
	padding: 8px;
	line-height: 18px;
	outline: none;
	border-width: 1px;
	border-radius: 4px;
	border-style: solid;
	border-color: var(--color-lightgray-4);
	background-color: var(--color-white);
	color: var(--color-blue-2);
}

.form-check-input
{
	margin: 0;
	border-radius: 4px;
	border-color: var(--color-lightgray-4);
}

/* LABEL */

label,
label a
{
	font-weight: 500;
	font-size: 13px;
}

/* FORM-ROW */

.form-row,
.form-row label
{
	grid-gap: 8px;
}

.form-row label
{
	display: flex;
	align-items: center;
}

.form-row input
{
	flex-grow: 1;
}

.form-row.col-full
{
	width: 100%;
}

.form-row.col-half
{
	width: calc(50% - 4px);
}

.form-row.row-vat label
{
	cursor: pointer;
}

.form-row.row-label
{
	padding: 16px 0;
}

.form-row.row-label:first-child
{
	padding-top: 0;
}

.form-row.row-label h3
{
	font-weight: 500;
	font-size: 15px;
	color: var(--color-blue-1);
}

/* ROLE */

#role
{
	width: 100%;
}

#role > div
{
	border-color: var(--color-lightgray-4);
}

#role > div > div > div
{
	color: var(--color-gray-1);
}

/*
 * ----------------------------------------------------------
 *
 * BUTTONS
 *
 * ----------------------------------------------------------
 *
 * DEFAULT */

button,
.button
{
	font-weight: 500;
	font-size: 14px;
	text-align: center;
	display: inline-block;
	margin: 0;
	padding: 8px 12px;
	min-width: auto;
	cursor: pointer;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	line-height: 18px !important;
	border-radius: 4px;
	border-width: 1px;
	border-style: solid;
	background: none;
	text-decoration: none;
	text-transform: none;
	-webkit-box-shadow: none;
	   -moz-box-shadow: none;
			box-shadow: none;
}

/* SIZE */

.button-small
{
	padding: 8px 12px;
	font-size: 13px;
}

.button-large
{
	padding: 12px 12px;
	font-size: 16px;
}

/* COLOR */

button,
button:focus,
.button,
.button:focus
{
	background-color: var(--color-white);
	border-color: var(--color-lightgray-4);
	color: var(--color-blue-1);
}

button:hover,
.button:hover
{
	background-color: var(--color-rose);
	border-color: var(--color-rose);
	color: var(--color-blue-1);
}

.button-blue,
.button-blue:focus
{
	background-color: var(--color-blue-1);
	border-color: var(--color-blue-1);
	color: var(--color-white);
}

.button-blue:hover
{
	background-color: var(--color-rose);
	border-color: var(--color-rose);
	color: var(--color-blue-1);
}

/*
 * ----------------------------------------------------------
 *
 * ELEMENTS
 *
 * ----------------------------------------------------------
 *
 * NOTY */

.noty_theme__bootstrap-v4.noty_bar i
{
	display: none;
}

.noty_theme__bootstrap-v4.noty_bar .noty_body,
.noty_theme__bootstrap-v4.noty_bar .noty_buttons
{
	padding: 24px;
}

.noty_theme__bootstrap-v4.noty_bar .noty_body
{
	padding-bottom: 0;
}

.noty_theme__bootstrap-v4.noty_bar .noty_body span
{
	display: block;
	margin-top: 8px;
	font-size: 16px;
}

.noty_theme__bootstrap-v4.noty_bar .noty_buttons
{
	display: flex;
	grid-gap: 8px;
}

.noty_theme__bootstrap-v4.noty_bar .noty_buttons .btn-danger
{
	background-color: var(--color-red);
	border-color: var(--color-red);
	color: var(--color-white);
}

.noty_theme__bootstrap-v4.noty_bar .noty_buttons .btn-error
{
	background-color: var(--color-white);
	border-color: var(--color-lightgray-3);
	color: var(--color-blue-1);
}

.noty_theme__bootstrap-v4.noty_bar .noty_buttons .btn-danger:hover,
.noty_theme__bootstrap-v4.noty_bar .noty_buttons .btn-error:hover
{
	background-color: var(--color-rose);
	border-color: var(--color-rose);
	color: var(--color-blue-1);
}

.noty_theme__bootstrap-v4.noty_type__warning
{
	background-color: var(--color-white);
	border-color: var(--color-lightgray-3);
	color: var(--color-blue-1);
}

/* BADGE */

 .badge
{
	text-transform: uppercase;
	font-weight: 500;
}

.badge.bg-primary
{
	background-color: var(--color-green) !important;
}

/* TOOLTIP */

.info-tooltip
{
	display: flex;
	flex-direction: column;
	grid-gap: 8px;
	position: fixed;
	z-index: 1000;
	width: 320px;
	height: auto;
	padding: 16px;
	border-radius: 6px;
	border: 1px solid var(--color-lightgray-3);
	background-color: var(--color-white);
	box-shadow: 0px 2px 4px 0px #02156426;
}

.info-tooltip span
{
	font-size: 14px;
}

.info-tooltip span.role
{
	text-transform: capitalize;
}

.info-tooltip label,
.info-tooltip label span
{
	font-size: 18px;
}

.info-tooltip i
{
	font-size: 24px;
}

/* PAGINATION */

.pagination
{
	margin: 0;
	grid-gap: 4px;
}

.pagination li a
{
	font-family: 'Montserrat', sans-serif;
	text-decoration: none;
	font-size: 14px;
	width: 32px;
	height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	grid-gap: 8px;
	border-radius: 4px;
	border: 1px solid var(--color-lightgray-3);
	background-color: var(--color-white);
	color: var(--color-gray-3);
}

.pagination li a::before,
.pagination li a::after
{
	font-family: 'FontAwesome';
	font-size: 12px;
}

.pagination li a.fa-chevron-right::before
{
	display: none;
	content: "";
}

.pagination li a.fa-chevron-right::after
{
	content: "\f054";
}

.pagination li.active a
{
	background-color: var(--color-gray-3);
	color: var(--color-white);
}

.pagination li a:hover,
.pagination li.active a:hover
{
	background-color: var(--color-blue-1);
	color: var(--color-white) !important;
}

.pagination li.previous a,
.pagination li.next a
{
	width: auto;
	padding-left: 16px;
	padding-right: 16px;
}

/* STATUS */

.status
{
	display: flex;
	align-items: center;
	justify-content: center;
	grid-gap: 8px;
	font-weight: 500;
	font-size: 13px;
	color: var(--color-gray-1);
}

.status.selected
{
	font-weight: 600;
	color: var(--color-blue-1);
}

.status .indicator
{
	display: inline-block;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background-color: var(--color-gray-1);
}

.status-waiting .indicator
{
	background-color: var(--color-yellow);
}

.status-active .indicator
{
	background-color: var(--color-green);
}

/*
 * ----------------------------------------------------------
 *
 * FILTERS
 *
 * ----------------------------------------------------------
 *
 * FLEX */

.filter
{
	grid-gap: 8px;
}

/* STATUS */

.filter-status
{
	display: flex;
	align-items: center;
	flex-grow: 1;
	grid-gap: 16px;
	cursor: pointer;
}

/*
 * ----------------------------------------------------------
 *
 * ACTIONS
 *
 * ----------------------------------------------------------
 *
 * ACTION */

.action a
{
	cursor: pointer;
}

/* ADD */

.action-add .button
{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	padding: 0;
}

/* SWITCH */

.action-switch .switch.on
{
	background-color: var(--color-blue-1);
}

.action-switch .switch.off
{
	background-color: var(--color-gray-1);
}

/* SEARCH */

.action-search i
{
	margin-left: -28px;
	color: var(--color-gray-1);
}

.action-search input
{
	padding-right: 40px;
}

.page-content .action-search
{
	position: fixed;
	top: 12px;
	right: 148px;
}

.users .page-content .action-search
{
	right: 278px;
}

/*
 * ----------------------------------------------------------
 *
 * MODAL
 *
 * ----------------------------------------------------------
 *
 * FLEX */

.modal form,
.modal .modal-content
{
	grid-gap: 8px;
}

.modal form
{
	display: flex;
	flex-flow: row wrap;
}

.modal form::after
{
	display: none;
}

.modal .modalclose
{
	top: 16px;
	color: var(--color-lightgray-4);
}

.modal .modalclose:hover
{
	color: var(--color-blue-1);
}

.modal .modal-header
{
	padding-top: 0;
	padding-left: 0;
	border-bottom: none;
}

.modal .modal-header h3
{
	display: flex;
	align-items: center;
	grid-gap: 8px;
	color: var(--color-blue-1);
}

.modal .modal-header h3,
.modal .modal-header h3 i
{
	font-size: 20px;
}

.modal .modal-content
{
	max-width: 640px;
	padding: 24px;
}

/*
 * ----------------------------------------------------------
 *
 * HEADER
 *
 * ----------------------------------------------------------
 *
 * HEIGHT */

 .navbar,
.header-menu
{
	height: 60px;
}

/* MENU */

.header-menu
{
	padding: 12px 24px;
	font-weight: 600;
	border-bottom: 1px solid var(--color-lightgray-3);
	background-color: var(--color-lightgray-3);
	color: var(--color-blue-1);
}

.header-menu h1
{
	display: flex;
	align-items: center;
	grid-gap: 8px;
	font-size: 18px;
}

/* ACTIONS */

.header-actions
{
	grid-gap: 8px;
}

.header-actions input,
.header-actions select,
.header-actions textarea
{
	border-color: var(--color-lightgray-4);
}

/*
 * ----------------------------------------------------------
 *
 * SIDEBAR
 *
 * ----------------------------------------------------------
 *
 * SIDE-MENU */

 .nav.side-menu i,
 .nav.side-menu a
{
	display: flex;
	align-items: center;
}

.nav.side-menu i
{
	justify-content: center;
	width: 16px;
	height: 16px;
	color: var(--color-rose);
}

.nav.side-menu a
{
	grid-gap: 8px;
}

.nav.side-menu a:hover
{
	color: var(--color-white);
}

.nav.side-menu a .svg-icon path
{
	fill: var(--color-rose);
}

.nav.side-menu a:hover .svg-icon path
{
	fill: var(--color-white);
}

/*
 * ----------------------------------------------------------
 *
 * PAGE
 *
 * ----------------------------------------------------------
 *
 * CONTAINER */

.table_v2 .page-container
{
	width: 100%;
	padding-top: 24px;
	padding-bottom: 24px;
	grid-gap: 24px;
}

/*
 * ----------------------------------------------------------
 *
 * TABLE
 *
 * ----------------------------------------------------------
 *
 * WRAP */

 .table_v2
{
	margin-left: 0;
	margin-right: 0;
}

 .table_v2 .page-header
{
	grid-gap: 16px;
}

.table_v2 .header-title
{
	flex-grow: 1;
}

.table_v2 .x_content
{
	padding: 0 24px;
	background-color: var(--color-lightgray-2);
}

.table_v2 .react-bootstrap-table
{
	overflow: auto;
	border-radius: 6px;
	border: 1px solid var(--color-lightgray-3);
}

/*
 * ----------------------------------------------------------
 *
 * SHEET TABLE
 *
 * ----------------------------------------------------------
 *
 * WRAP */

.table_v2 .sheet-table
{
	overflow: hidden;
	margin: 0;
}

/* ACTIONS */

.table_v2 .sheet-table .actions
{
	display: flex;
	justify-content: flex-end;
	grid-gap: 8px;
}

.table_v2 .sheet-table .actions button
{
	opacity: 0.2;
}

.table_v2 .sheet-table .table-row:hover .actions button
{
	opacity: 1;
}

/* SORT */

.table_v2 .sheet-table .order
{
	display: inline-flex;
	flex-direction: column;
	transform: translateY(-30%);
	margin-left: 16px;
}

.table_v2 .sheet-table .sortable
{
	cursor: pointer;
}

/* CARET */

.table_v2 .sheet-table .caret
{
	display: inline-block;
	width: 8px;
	height: 8px;
	vertical-align: middle;
	border-left: 2px solid var(--color-lightgray-4);
	border-right: none;
	border-color: var(--color-lightgray-4);
	background: none;
}

.table_v2 .sheet-table .caret-up
{
	border-top: none;
	border-bottom-width: 2px;
	border-bottom-style: solid;
	transform: rotate(135deg);
	margin-bottom: -1px;
}

.table_v2 .sheet-table .caret-down
{
	border-top-width: 2px;
	border-top-style: solid;
	border-bottom: none;
	transform: rotate(-135deg);
	margin-top: -1px;
}

.table_v2 .sheet-table .caret.active
{
	border-color: var(--color-gray-1);
}

/* ROW */

.table_v2 .sheet-table .table-row
{
	background-color: var(--color-lightgray-1);
	border-color: var(--color-lightgray-3) !important;
	border-right: none;
	border-left: none;
	cursor: default;
}

.table_v2 .sheet-table .table-row:last-child
{
	border-bottom: none;
}

.table_v2 .sheet-table .table-row:hover
{
	background-color: var(--color-white);
}

/* CELL */

.table_v2 .sheet-table th,
.table_v2 .sheet-table td
{
	border: none;
	text-wrap: nowrap;
	vertical-align: middle;
	padding: 16px;
	font-size: 13px;
	color: var(--color-gray-2);
}

@media only screen and (min-width:1440px)
{
	.table_v2 .sheet-table th,
	.table_v2 .sheet-table td
	{
		font-size: 15px;
	}
}

.table_v2 .sheet-table th
{
	font-weight: 600;
	background-color: var(--color-white);
}

.table_v2 .sheet-table td div.inner
{
	cursor: pointer;
}

/* CELL NO DATA */

.table_v2 .sheet-table td.react-bs-table-no-data
{
	text-align: center;
	font-size: 18px;
	padding-top: 40px;
	padding-bottom: 40px;
	background-color: rgba(255, 255, 255, 0.6);
	color: var(--color-gray-1);
}

/* CELL WIDTH */

.table_v2 .sheet-table .cell-owner,
.table_v2 .sheet-table .cell-client,
.table_v2 .sheet-table .cell-email,
.table_v2 .sheet-table .cell-phone
{
	width: 200px;
}

.table_v2 .sheet-table .cell-invoice
{
	width: 120px;
}

.table_v2 .sheet-table .cell-paid,
.table_v2 .sheet-table .cell-deadline,
.table_v2 .sheet-table .cell-created,
.table_v2 .sheet-table .cell-modified
{
	width: 110px;
}

.table_v2 .sheet-table .cell-hours,
.table_v2 .sheet-table .cell-total,
.table_v2 .sheet-table .cell-payment,
.table_v2 .sheet-table .cell-actions,
.table_v2 .sheet-table .cell-progress
{
	width: 80px;
}

/* CELL VARIOUS */

.table_v2 .sheet-table .cell-paid,
.table_v2 .sheet-table .cell-payment,
.table_v2 .sheet-table .cell-hours,
.table_v2 .sheet-table .cell-total,
.table_v2 .sheet-table .cell-created,
.table_v2 .sheet-table .cell-actions
{
	text-align: right;
}

.table_v2 .sheet-table .cell-client
{
	text-wrap: nowrap;
}

.table_v2 .sheet-table .cell-status
{
	width: 16px;
	padding-left: 0;
	padding-right: 0;
}

.table_v2 .sheet-table .cell-status .indicator
{
	transform: translateX(150%);
}

/* CELL TH */

.table_v2 .sheet-table th.cell-deadline
{
	padding-left: 0;
}

/* CELL TD */

.table_v2 .sheet-table td.cell-project
{
	text-wrap: wrap;
	color: var(--color-blue-1);
}

.table_v2 .sheet-table td.cell-project,
.table_v2 .sheet-table td.cell-name,
.table_v2 .sheet-table td.cell-actions a,
.table_v2.apps .sheet-table td:not(.cell-actions)
{
	cursor: pointer;
}
