@CHARSET "ISO-8859-1";
/** legend:
- page structure
- utility styles (override, generic, ...)
- footer

- body style
	- dialog (jquery)
	- feedback messages
	- checkin/checkout
	- calendar
	- legend: holidays, status
	- details pages
	- attendance
*/

/* --------------------------------------------------------------- 
	PAGE STRUCTURE 
*/
#menu a {
	color: #fff;
}
#menu a.active, 
#menu a:hover {
	/*text-decoration: underline;*/
	font-weight: bold;
	
}

#menu .title-bar {
	background:transparent;
}
#menu .top-bar-left {
	width: 100%;
}

@media screen and (max-width: 39.9375em) {
    #menu .top-bar-left {
    	background: #fff;
    	
    }
    #menu a {
        color: #003763;
    }
}

.dashboard-item table thead,
.dashboard-item table tfoot {
	color: #fff;
}

/* --------------------------------------------------------------- 
	UTILITY STYLES
*/


/* ---------------------------------------------------------------
	FOOTER
*/


/* ---------------------------------------------------------------
	BODY
*/
.noty_message {
	font-size: 2.5em !important;
    height: 2em !important;
    padding: 0.6em !important;
}

/* dialogs */
.ui-dialog .ui-dialog-titlebar {
	padding-bottom: 0;
	background: none;
	border: none;
}
.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close{
	color: #8a8a8a;
	background: none;
	border: none;
}
.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-button-text{
	display:none;
}
.ui-widget-overlay {
    background-image: url(/vendor/jquery/images/ui-bg_diagonals-thick_20_666666_40x40.png);
}

/* date container */
.date-container {
	max-width: 8em;
	position: relative;
}

.date-container input.date-type {
	max-width: 8em;
}

.date-container i {
	font-size: 1.5em;
	color: #aaa;
	position: absolute;
	right: 17px;
	top: 5px;
}


/* select2 */
.select2 {}

.select2 .select2-selection {
	background: rgba(51, 51, 51, 0.55) !important;
	color: #fff !important;
	border-radius: 0 !important;
	border: none !important;
	font-size: 13px !important;
}
.reveal .select2 .select2-selection {
	background: transparent !important;
	color: #0a0a0a !important;
	border: 1px solid #cacaca !important;
}
.select2 .select2-selection__rendered {
	color: #fff !important;
}

.select2-container .select2-search { }
.select2-container .select2-search .select2-search__field {
	height: 2em;
	font-size: 13px;
	margin-bottom: 0;
}

.select2-container .select2-results { }
.select2-container .select2-results__options, .select2-results__option {
	color: #0a0a0a !important;
	padding: 2px 6px !important;
}
.select2-container .select2-results__option--highlighted { }
.reveal .select2 .select2-selection__arrow b {
	border-color: #ccc transparent transparent transparent;
}



/* timer-control */

.timer_controls {
	
}
.timer_controls .timer_control {
	float: left;
	width: 45px;
}
.timer_controls .timer_control .timer_up, 
.timer_controls .timer_control .timer_down
{
	text-align: center;
	/*width: 40px;*/
	height: 20px;
	cursor: pointer;
}
.timer_controls .timer_control .timer_data {
	text-align: center;
	/*width: 40px;*/
	/*height: 20px;*/
}
.timer_controls .timer_control .timer_data input {
	width: 100%;
	margin: 0;
	color: #777;
	text-align: center;
	font-size: 1.5em;
	font-weight: bold; 	
}
.timer_controls .timer_control .timer_data input::-webkit-outer-spin-button,
.timer_controls .timer_control .timer_data input::-webkit-inner-spin-button {
    /* display: none; <- Crashes Chrome on hover */
    -webkit-appearance: none;
    margin: 0;
}

/* FEEDBACK MESSAGE */
.ui-dialog #dvMessage,
#dvMessage {
	margin-top: 1em;
	font-size: 0.8em;
}

.ui-dialog #file-upload {
    box-sizing: border-box;
    padding: .5rem;
    border: 1px solid #cacaca;
    background-color: #fefefe;
    box-shadow: inset 0 1px 2px hsla(0,0%,4%,.1);
    border-radius: 0;
    transition: box-shadow .5s,border-color .25s ease-in-out;
    -webkit-appearance: none;
    -moz-appearance: none;
}


/* TABLES */
table thead th:not(:last-child) {
	border-right: 1px dashed #999;
}
table tbody td:not(:last-child) {
	border-right: 1px dashed #ddd;
}

table .border-right {
    border-right: 1px solid #ccc !important;
}
table .border-bottom {
   	border-bottom: 1px dashed #999;
}
table tr.separator {
	border-bottom: 5px solid #ccc;
}
table .isLate {
	color: #f04124;
	font-weight: bold;
}
table tr.holiday {
	color: #aaa;
}

/* CHECKIN/CHECKOUT */

.checkin-control .checkin, 
.checkin-control .checkout {
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	border: solid 3px;
	width: 100%;
	color: #fff;
	font-size: 1.5em;
	margin: 0;
}
.checkin-control .checkin i, 
.checkin-control .checkout i {
	margin-right: 0.5em;
}
.checkin-control .checkin {
	border-color: #478917 !important;
	background-color: #529f1b !important;
}
.checkin-control .checkin:hover {
    border-color: #2c550e !important;
    background-color: #3c7314 !important;
}
.checkin-control .checkout {
	border-color: #b31e13 !important;
	background-color: #ca2216 !important;
}
.checkin-control .checkout:hover {
    border-color: #7c150d !important;
    background-color: #9c1a11 !important;
}
/*.checkin-control .checkout-action.close {
	background-color: #ca2216;
    border-color: #b31e13;
    cursor:
}*/

.checkin-today-control .working {
    font-size: 1.7em;
    font-weight: bold;
}





/* ************* STATS ************** */
/* >> checkin */
.checkin-today-employees table tr:not(:first-child) th,
.checkin-today-employees table th:not(:first-child), 
.checkin-today-employees table td:not(:first-child) {
    text-align: center;
}
.checkin-today-employees table th{
    padding: .1rem .625rem;
}
.checkin-today-employees table th, 
.checkin-today-employees table td {
	vertical-align: top;
}
.checkin-today-employees .allday {
	color: #999;
}

/* >> holiday */
.dashboard-holiday-stats{
	
} 
.dashboard-holiday-stats .holiday-count {
	
}
.dashboard-holiday-stats .holiday-count table th{
    padding: .1rem .625rem;
	
}
.dashboard-holiday-stats .holiday-count table thead th:not(:last-child) {
	border-right: 1px dashed #999;
}
.dashboard-holiday-stats .holiday-count table tbody td:not(:last-child) {
	border-right: 1px dashed #ddd;
}


/* calendar */
#calendarDetail ul {
	margin: 10px 0;
	list-style: none;
	margin-left: 0;
	height: 40px;
}

#calendarDetail ul li input[type=radio] {
	display: none;
}
/*
#calendarDetail ul li {
	float: left;
	width: 50%;
	height: 30px;
	padding: 2px 10px;
	text-align: center;
	border-right: 5px solid;
	border: #555;
	background: rgba(200, 200, 200, 0.5);
}

#calendarDetail ul li label {
	color: #999;
	cursor: pointer;
}

#calendarDetail ul li.active, #calendarDetail ul li:hover {
	border: 1px solid #74b2e2;
	background: #e4f1fb;
	font-weight: bold;
	color: #0070a3;
}

#calendarDetail ul li.active label, #calendarDetail ul li:hover label {
	font-weight: bold !important;
	color: #0070a3 !important;
}

#calendarDetail ul li input[type=radio] {
	display: none;
}

#calendarDetail ul li:first-child {
	-webkit-border-radius: 5px 0 0 5px;
	-moz-border-radius: 5px 0 0 5px;
	border-radius: 5px 0 0 5px;
}

#calendarDetail ul li:last-child {
	-webkit-border-radius: 0 5px 5px 0;
	-moz-border-radius: 0 5px 5px 0;
	border-radius: 0 5px 5px 0;
}*/

#calendarDetail input.date {
	float: left;
	width: 60%;
	margin-right: 3%;
}

#calendarDetail input.time {
	float: left;
	width: 35%;
}

#calendarDetail .current-status {
	font-size: 12px;
}

#calendarDetail .current-status .item {
	float: left;
	width: 100%;
}

#calendarDetail .current-status .item .box {
	border-width: 1px;
	border-style: solid;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	float: left;
	width: 15px;
	height: 15px;
}

#calendarDetail .current-status .item .notes {
	float: left;
	font-size: 85%;
	padding-left: 5px;
}

.calendar-button {
	font-size: 12px !important;
	font-weight: normal !important;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

.calendar-button.simple {
	border: #555 !important;
	background: rgba(200, 200, 200, 0.5) !important;
	color: #999 !important;
}
.calendar-button.simple .ui-icon {
}

.calendar-button.close {
	margin-left: 25px !important;
	border: none;
	background: transparent;
}
.calendar-button.close .ui-icon {
}

.calendar-button.alert {
	color: #D91E18;
	border: 1px solid #D91E18;
	background: rgba(217, 30, 24, 0.2);
}
.calendar-button.alert .ui-icon {
}

.calendar-button.warning {
	color: #D35400;
	border: 1px solid #D35400;
	background: rgba(211, 84, 0, 0.2);
}
.calendar-button.warning .ui-icon {
}

.calendar-button.success {
	color: #1E824C;
	border: 1px solid #1E824C;
	background: rgba(30, 130, 76, 0.2);
}
.calendar-button.success .ui-icon {
}

.calendar-button.info {
	color: #3498DB;
	border: 1px solid #3498DB;
	background: rgba(52, 152, 219, 0.2);
}
.calendar-button.info .ui-icon {
}


/* legend */
.legend {
	min-height: 20px;
	width: 100%;
	margin-top: 15px;
}

.legend .items.horizontal {
	width: 100%;
	min-height: 20px;
}

.legend .items.vertical {
	float: left;
	width: 25%;
	min-height: 20px;
}
.legend .items.vertical.vertical-col2 {
    width: 48%;
}

.legend .item {
	float: left;
	margin-left: 10px;
	width: 100%;
}
.legend .items.vertical-col2 .item {
	float: left;
	margin-left: 10px;
	width: 45%;
}

.legend .item .box {
	float: left;
	width: 15px;
	height: 15px;
}

.legend .item .notes {
	float: left;
	font-size: 85%;
	padding-left: 5px;
}

.legend .today {
	background-color: #FCF8E3 !important;
}

/* legend: holidays */
.holiday {
	color: #000;
}

.weekend {
	background-color: #F4FCFE !important;
}

/* >> national holiday*/
.holiday_2 {
	background-color: #f5dad0 !important;
}

/* >> local holiday*/
.holiday_3 {
	background-color: #d0ecf5 !important;
}

/* >> company holiday*/
.holiday_4 {
	background-color: #d9f5d0 !important;
}

/* legend: status */
.holiday_status, .absence_status {
	color: #000;
}

.holiday_status .item, .absence_status .item {
	color: #fff;
}

.holiday_status .box, .absence_status .box {
	border-width: 1px;
	border-style: solid;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}

/*
1	rascunho
2	submetido
3	rejeitado
4	aprovado
6	a aguardar (cancelamento)
7	cancelado
8	eliminado
*/

/* >> absense_status */
.absence-status {
	
}

.absence-status.status_1, .absence-status.status_1 .fc-content {
	border-color: #3F3956 !important;
	background-color: #DDDAE7 !important;
	color: #000;
}

.absence-status.status_2, .absence-status.status_2 .fc-content {
	border-color: #3F3956 !important;
	background-color: #AFA9C6 !important;
	color: #000;
}

.absence-status.status_3, .absence-status.status_3 .fc-content {
	border-color: #3F3956 !important;
	background-color: #DDDAE7 !important;
	color: #000;
	text-decoration: line-through;
}

.absence-status.status_4, .absence-status.status_4 .fc-content {
	border-color: #3F3956 !important;
	background-color: #8277A6 !important;
	color: #000;
}

.absence-status.status_6, .absence-status.status_6 .fc-content {
	border-color: #3F3956 !important;
	background-color: #AFA9C6 !important;
	color: #000;
}

/* >> holiday_status */
.holiday-status {
	
}

.holiday-status.status_1, .holiday-status.status_1 .fc-content {
	border-color: #155165 !important;
	background-color: #D0ECF5 !important;
	color: #000;
}

.holiday-status.status_2, .holiday-status.status_2 .fc-content {
	border-color: #106802 !important;
	background-color: #CCF4C6 !important;
	color: #000;
}

.holiday-status.status_3, .holiday-status.status_3 .fc-content {
	border-color: #710C0C !important;
	background-color: #FF9090 !important;
	color: #000;
	text-decoration: line-through;
}

.holiday-status.status_4, .holiday-status.status_4 .fc-content {
	border-color: #106802 !important;
	background-color: #92E285 !important;
	color: #000;
}

.holiday-status.status_6, .holiday-status.status_6 .fc-content {
	border-color: #876900 !important;
	background-color: #FDE9A9 !important;
	color: #000;
}


/* details pages */
.details-container {
	background: rgba(255, 255, 255, 0.4);
    padding: 0.9rem;
}
.details-container .title {
	border-bottom: 1px solid #e5e5e5;
    margin-bottom: 15px;
}
.details-container .header {
	font-weight: bold;
}
.details-container .header i {
	font-size: 1.4em;
	margin-right: 1em;
}
.details-container .header i.normal {
	font-size: 1em;
    margin-right: 0.5em;
}
.details-container .header .module {
	text-transform: uppercase;
	color: #f4e599;
}
.details-container .header .module::after {
	content: '::';
}
.details-container .columns {
	padding-top: 3px;
    padding-bottom: 3px;
}

.details-container .legend .item {
	margin-bottom: 5px;
}
.details-container .legend .item .box {
	width: 20px;
	height: 20px;
	
    font-size: 12px;
    text-align: center;
    font-weight: bold;
}

/* >> next days */
.next-days thead th:not(:last-child) {
	border-right: 1px dashed #999;
} 
.next-days tbody td:not(:last-child) {
	border-right: 1px dashed #ddd;
}
.next-days .days {
	height: 25px;
	border-bottom: 1px dashed #ccc;
}
.next-days .days.days-header {
	margin-left: 100px;
}
.next-days .days .month{
	float:left;
	border-left: solid 2px #ccc;
	width: 2px;
	height: 25px;
}
.next-days .days .day {
	float:left;
	width: 2%;
	max-width: 25px;
	height: 25px;
}
.next-days .today {
	background: #fcf8e3 !important;
    /*border: solid 1px #d9d98e;*/
}

/* ATTENDANCE */
.attendance-main li {
	list-style: none;
	overflow: hidden;
	cursor:pointer; 
	
	margin-bottom: 2rem;
}
.attendance-main li .employee {
    height: 5em;
    width: 100%;
    line-height: 2em;
    font-size: 1.6em;
    font-weight: bold;
    text-align: center;
    
    padding: 0.55556rem 1.11111rem;
    border: 2px solid #fff;
    background: rgba(0,0,0,0.2);
    /*margin: 2rem;*/
    overflow: hidden;
}

.attendance-main li:last-child:last-child {
	float:left;
}


.attendance-main .employee.holiday {
	background-color: rgba(255, 255, 255, 0.2);
	color: #aaa;
	border: none;
}

.attendance-main .employee.inside {
	background-color: rgba(146, 226, 133, 0.3);
}
.attendance-main .employee.inside:hover, 
.attendance-main .employee.inside.active { 
    background-color: rgba(146, 226, 133, 0.6);
}
.attendance-main .employee.outside {
	background-color: rgba(255, 144, 144, 0.2);
} 
.attendance-main .employee.outside:hover, 
.attendance-main .employee.outside.active { 
    background-color: rgba(255, 144, 144, 0.5);
}


@media screen and (min-width: 40em) {
	.attendance-main .employee {
		font-size: 1.6em;
	}
}
@media screen and (min-width: 64em) {
	.attendance-main .employee {
		font-size: 2em;
	}
}

/* VIRTUAL KEYBOARD */
#numeric-keyboard {
}
#numeric-keyboard #code {
	font-size: 2.5em !important;
    height: 34px;
    text-align: center;
}

#numeric-keyboard .padded-column {
	height: 3.7em;
	line-height: 2.3em;
    font-size: 2em;
    font-weight: bold;
    text-align: center;

	padding: 0.55556rem .9375rem;
	
}
#numeric-keyboard .number {
    padding: 0;
    border: 2px solid #fff;
    
	cursor:pointer; 
	
	border-color: #155165 !important;
	background-color: #D0ECF5 !important;
	color: #000;
	
	width: 100%;
	height: 100%;
}
#numeric-keyboard .number:hover {
	background-color: rgba(208, 236, 245, 0.3) !important;
}

#numeric-keyboard .number.pad-clean {
	background-color: rgba(150, 185, 194, 0.5) !important;
}
#numeric-keyboard .number.pad-clean:hover {
	background-color: rgba(150, 185, 194, 1) !important;
}

#numeric-keyboard .number.pad-submit {
	background-color: rgba(146, 226, 133, 0.3) !important;
}
#numeric-keyboard .number.pad-submit:hover {
	background-color: rgba(146, 226, 133, 0.7) !important;
}


