@import "https://fonts.googleapis.com/css?family=Poppins:300,400,500,600,700";

.uib-datepicker-popup {
	padding-bottom: 10px;
}

.datetime-picker-dropdown {
	min-width: 180px;
}

.datetime-picker-dropdown > li.date-picker-menu div > table .btn-default {
    border: 0;
}

.datetime-picker-dropdown > li.time-picker-menu div > table {

}

.modal-open .datetime-picker-dropdown { 
	z-index: 1200!important; 
}

.th-center > th {
	text-align: center;
}

.th-vertical-middle > th {
	vertical-align: middle !important;
}

/* input show X clear */
/* input show X clear */
input[type='search']::-webkit-search-cancel-button {
    -webkit-appearance: none;
    height: 20px;
    width: 20px;
    /* margin-left: .4em; */
    margin-right: 0;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23777'><path d='M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z'/></svg>");
    cursor: pointer;
}

@media (min-width: 768px) {
	.modal-win-lg-90 .modal-lg {
    	width: 90% !important;
	}
	
	.modal-win-lg-70 .modal-lg {
    	width: 70% !important;
	}
	
	/* row same height */	
    .row-equal {
    	display: flex;
    	flex-wrap: wrap;
  	}
  	
  	.row-fluid-start {
    	display: flex;
    	flex-wrap: wrap;
    	align-items: flex-start;  	
  	}
  	
  	.row-fluid {
    	display: flex;
    	flex-wrap: wrap;
    	align-items: flex-end;
  	}
}

html, body {
    height: 100%;
    margin: 0px;
}

body {
    color: #73879C;
    background: #f7f7f7;
    font-family: "Helvetica Neue", Roboto, Arial, "Droid Sans", sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.471;
}

#main {
	height: 100%;
    width: 100%;
    padding: 90px 0 45px 0;
    min-height: 100vh;
    transition: all 0.3s;
    position: relative;
    top: 0;
    right: 0;
}

.copyright {
	text-align: center;
    padding-top: 10px;
}

.footer {
	z-index: 999;
	background: #fff;
    padding: 0;
    margin: 0;
    font-size: 14px;
    border-top: 1px solid #d6d6d6;
	position: fixed;
    height: 40px;
    bottom: 0;
    width: 100%;
}

@media only screen and (max-width: 768px) {
	.footer .copyright {
		padding-top: 5px;
		font-size: 11px;
	}
	
	.navbar-header h1 a {
		font-size: 28px;
	}
	
	.navbar {
		padding-top: 5px !important;
		padding-bottom: 5px !important;
	}
	
	#main {
		padding-top: 70px;
	}
}

.content {
	padding: 0px;
	min-height: 500px;
    border: 0;
    box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.1);
}

.full-screen {
	z-index: 1031;
	left: 0;
	top: 0;
	position: absolute; 
	width: 100%;
	min-height: 100vh;
	padding: 0;
	margin: 0;
}

.full-screen > .x-panel {
	min-height: 100vh;
}

.x-window {
	
}

.x-panel {
    position: relative;
    width: 100%;
    margin-bottom: 10px;
    padding: 10px 17px;
    display: inline-block;
    background: #fff;
    border: 1px solid #E6E9ED;
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    column-break-inside: avoid;
    opacity: 1;
    transition: all .2s ease
}

.x-title {
    border-bottom: 2px solid #E6E9ED;
    padding: 1px 5px 6px;
    margin-bottom: 10px
}

.x-title .filter {
    width: 40%;
    float: right
}

.x-title h2 {
	font-size: 20px;
    margin: 5px 0 6px;
    float: left;
    display: block;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap
}

.x-title h2 small {
    margin-left: 10px
}

.x-title span {
    color: #BDBDBD
}

.x-content {
    padding: 0 5px 6px;
    position: relative;
    width: 100%;
    float: left;
    clear: both;
    margin-top: 5px
}

.x-content h4 {
    font-size: 16px;
    font-weight: 500
}

.x-panel, .x-title {
    margin-bottom: 10px;
}

.x-content, table.tile td ul li a, table.tile_info {
    width: 100%;
}

.panel-toolbox {
    float: right;
    min-width: 20px;
}

.panel-toolbox > li {
    float: left;
    cursor: pointer
}

.panel-toolbox > li > a {
    padding: 5px;
    color: #C5C7CB;
    font-size: 14px
}

.panel-toolbox > li > a:hover {
    background: #F5F7FA
}

.degrees:after, .x-content, .x-panel {
    position: relative;
}

*, :after, :before {
    box-sizing: border-box;
}

.form-control-feedback {
    margin-top: 8px;
    height: 23px;
    color: #bbb;
    line-height: 24px;
    font-size: 15px
}

.form-control-feedback.left {
    border-right: 1px solid #ccc;
    left: 13px
}

.form-control-feedback.right {
    border-left: 1px solid #ccc;
    right: 13px
}

.btn.btn-app {
    position: relative;
    padding: 15px 5px;
    margin: 0 0 10px 10px;
    min-width: 80px;
    height: 60px;
    box-shadow: none;
    border-radius: 0;
    text-align: center;
    color: #666;
    border: 1px solid #ddd;
    background-color: #fafafa;
    font-size: 12px
}

.btn.btn-app > .fa,
.btn.btn-app > .glyphicon,
.btn.btn-app > .ion {
    font-size: 20px;
    display: block
}

.btn.btn-app:hover {
    background: #f4f4f4;
    color: #444;
    border-color: #aaa
}

.btn.btn-app:active,
.btn.btn-app:focus {
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125)
}

.btn.btn-app > .badge {
    position: absolute;
    top: -3px;
    right: -10px;
    font-size: 10px;
    font-weight: 400
}

.bg-white {
    background: #fff !important;
    border: 1px solid #fff !important;
    color: #73879C;
}

.bg-green {
    background: #1ABB9C !important;
    border: 1px solid #1ABB9C !important;
    color: #fff;
}

.bg-red {
    background: rgba(231, 76, 60, 0.5) !important;
    color: #fff;
}

.bg-light-grey {
    background: rgba(177, 177, 177, 0.5)!important;
    color: #73879C;
}

.bg-blue {
    background: #3498DB !important;
    border: 1px solid #3498DB !important;
    color: #fff;
}

.bg-orange {
    background: #F39C12 !important;
    border: 1px solid #F39C12 !important;
    color: #fff;
}

.bg-light-orange {
    background: #ffd895!important;
    border: 1px solid #ffd895 !important;
    color: #73879C;
}

.bg-purple {
    background: #9B59B6 !important;
    border: 1px solid #9B59B6 !important;
    color: #fff;
}

.bg-blue-sky {
    background: #50C1CF !important;
    border: 1px solid #50C1CF !important;
    color: #fff;
}

/* login form start */

.login-container {
    margin-top: 5%;
    margin-bottom: 5%;
}

div[ng-click],label[ng-click] {
	cursor: pointer;
}

.login-form {
    padding: 5%;
    box-shadow: 0 5px 8px 0 rgba(0, 0, 0, 0.2), 0 9px 26px 0 rgba(0, 0, 0, 0.19);
}

.login-form h1 {
    text-align: center;
}

.login-container form {
    padding: 5%;
}

.btn-outline-primary {color: #007dc1; background-color:transparent; background-image: none; border-color: #007dc1}
.btn-outline-primary:hover {color: #FFF; background-color: #007dc1; border-color: #007dc1}
.btn-outline-primary:focus {color: #007dc1; box-shadow:0 0 0 .2rem rgba(0,125,193,0.5)}
.btn-outline-primary:disabled {color: rgba(0,125,193,0.8); border-color: rgba(0,125,193,0.8); background-color:transparent}
.btn-outline-primary:not(:disabled):not(.disabled):active,
.btn-outline-primary:not(:disabled):not(.disabled):active:focus {box-shadow:0 0 0 .2rem rgba(0,125,193,0.5)}

.btn-outline-info {color: #5bc0de; background-color: transparent; background-image: none; border-color: #5bc0de}
.btn-outline-info:hover {color: #FFF; background-color: #5bc0de; border-color: #5bc0de}
.btn-outline-info:focus {color: #5bc0de; box-shadow:0 0 0 .2rem rgba(91,192,222,0.5)}
.btn-outline-info:disabled {color: rgba(91,192,222,0.8); border-color: rgba(91,192,222,0.8); background-color:transparent}
.btn-outline-info:not(:disabled):not(.disabled):active,
.btn-outline-info:not(:disabled):not(.disabled):active:focus {box-shadow:0 0 0 .2rem rgba(91,192,222,0.5)}

.btn-outline-warning {color: #ffc107; background-color: transparent; background-image: none; border-color: #ffc107}
.btn-outline-warning:hover {color: #FFF; background-color: #ffc107; border-color: #ffc107}
.btn-outline-warning:focus {color: #ffc107; box-shadow:0 0 0 .2rem rgba(255, 193, 7,0.5)}
.btn-outline-warning:disabled {color: rgba(255, 193, 7,0.8); border-color: rgba(255, 193, 7,0.8); background-color:transparent}
.btn-outline-warning:not(:disabled):not(.disabled):active,
.btn-outline-warning:not(:disabled):not(.disabled):active:focus {box-shadow:0 0 0 .2rem rgba(255, 193, 7,0.5)}

.btn-outline-dangger {color: #d9534f; background-color: transparent; background-image: none; border-color: #d9534f}
.btn-outline-dangger:hover {color: #FFF; background-color: #d9534f; border-color: #d9534f}
.btn-outline-dangger:focus {color: #d9534f; box-shadow:0 0 0 .2rem rgba(217, 83, 79,0.5)}
.btn-outline-dangger:disabled {color: rgba(217, 83, 79,0.8); border-color: rgba(217, 83, 79,0.8); background-color:transparent}
.btn-outline-dangger:not(:disabled):not(.disabled):active,
.btn-outline-dangger:not(:disabled):not(.disabled):active:focus {box-shadow:0 0 0 .2rem rgba(217, 83, 79,0.5)}

.login-form .forget-pwd{
    color: #fff;
    font-weight: 600;
    text-decoration: none;
}

/* login form end */

.has-error .btn-group-check > .btn {
  color: #a94442;
  background-color: #f2dede;
  border-color: #a94442;
}

.has-error .hsb-checkbox-group {
  color: #a94442;
  background-color: #f2dede;
  border-color: #a94442;
}

.hsb-checkbox {
    display: inline;
	margin-left: 5px;
}

.hsb-checkbox label {
    display: inline;
    cursor: pointer;
	padding-left: 3px;
	vertical-align: top; 
}

.hsb-checkbox input[type=checkbox] {
    display: inline;
    cursor: pointer;
}

@media (max-width: 1200px) {
    .x-title h2 {
        width: 62%;
        font-size: 17px
    }
    .tile,
    .graph {
        zoom: 85%;
        height: inherit
    }
}

@media (max-width: 1270px) and (min-width: 192px) {
    .x-title h2 small {
        display: none
    }
}

@media (min-width: 800px) {
	/*
	.fixed-table-header thead {
		display: block;
		overflow: none;
	}
	
	.fixed-table-header tbody {
		display: block;
		overflow-x: hidden;
		overflow-y: auto;
	}
	*/
	
    .mt-5 { margin-top: 5px; }
    .mr-5 { margin-right: 5px; }
    .mb-5 { margin-bottom: 5px; }
    .ml-5 { margin-left: 5px; } 
    .mt-10 { margin-top: 10px; }
    .mr-10 { margin-right: 10px; }
    .mb-10 { margin-bottom: 10px; }
    .ml-10 { margin-left: 10px; } 
}

/* tool bar 排版 */
.navbar-right {
    margin-right: 0;
}

img.img-fluid {
	width:100%;
}

h1,
.h1,
h2,
.h2,
h3,
.h3 {
    margin-top: 10px;
    margin-bottom: 10px
}
a {
    color: #5A738E;
    text-decoration: none
}
a,
a:visited,
a:focus,
a:active,
:visited,
:focus,
:active,
.btn:focus,
.btn:active:focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn.active.focus {
    outline: 0
}

.input-group-addon {
	cursor: pointer;
}

/** bootstrap-datetimepicker **/
.input-group.date .input-group-addon {
	background-color: #ffff !important;
}

.input-group.date .input-group-addon.disabled {
	background-color: #eee !important;
}

/** /bootstrap-datetimepicker **/

.customThumb-w {
    width: 100px;
    border: 0px solid #000;
    margin: 5px;
}

.customThumb {
    height: 75px;
    border: 0px solid #000;
    margin: 10px 5px 0 0;
}

.customThumb-lg {
    height: 120px;
    border: 0px solid #000;
    margin: 10px 5px 0 0;
}

.delete-img {
	opacity: 0.5;
}

.ln_solid {
    border-top: 1px solid #e5e5e5;
    color: #fff;
    background-color: #fff;
    height: 1px;
    margin: 5px 0 10px 0;
}

.ln-solid-no-margin-top {
    border-top: 1px solid #e5e5e5;
    color: #ffffff;
    background-color: #ffffff;
    height: 1px;
    margin: 0 0 10px 0
}

.pagination {
	margin-bottom: 5px !important;
	/*margin-right: 20px;*/ 
}

.pagination-label {
	margin-top: 5px;
	margin-left: 0px;
	margin-bottom: 5px;
	display: inline-block; 
	padding: 4px 10px; 
    font-size: 13px;
    color: #333;
    word-break: break-all;
    word-wrap: break-word;
    background-color: #f5f5f5;
    border: 1px solid #ccc;
    border-radius: 4px;
    vertical-align: top;
}

ul.pagination-sm {
	margin-top: 5px;
}

.pagination-label span:not(:first-child) {
	margin-left: 10px;
}

.sort-order:after {
    content: ' \25b2';  
}

.sort-order.reverse:after {
    content: ' \25bc';  
}

.toast-center {
	left: 0%;
    top: 40%;
}

.input-group-btn {
	overflow: hidden;
}

/* 隱藏上傳input */
.input-group-btn input[type=file] {
	font-size: 200px;
    position: absolute;
    top: 0;
    right: 0;
    margin: 0;
    opacity: 0;
    cursor: pointer;
    z-index: 3;
}

.custom-upload-btn {
	position: relative;
	overflow: hidden;
}

.custom-upload-btn input[type=file] {
	font-size: 200px;
    position: absolute;
    top: 0;
    right: 0;
    margin: 0;
    opacity: 0;
    cursor: pointer;
    z-index: 3;
}

/*bug fix ie 10 & ie11 隱蔵上傳input問題
@media all and (-ms-high-contrast:none) {
	.input-group-btn input[type=file] {
		z-index: 5;
	}
}
 */

.btn label {
	cursor: pointer;
	margin-bottom: 0px;
    font-weight: normal;
}

.errorWindow {
    margin: 2px auto;
    z-index: 1100 !important;
}

/* tr disabled效果 */
tr.disabled, tr.disabled tr {
    background-color: #d6d5d4 !important;
    opacity: 0.7;
}

input[type="search"]::-webkit-search-decoration:hover, input[type="search"]::-webkit-search-cancel-button:hover { 
	cursor:pointer; 
}

a.popup-link {
  color: #3280f3;
  cursor: pointer;
}

/* Tabs panel */
.tabbable-panel {
  border-bottom: 1px solid #ddd;
}
 
/* Default mode */
.tabbable-line > .nav-tabs {
  white-space: nowrap;
  overflow-x: auto;
  overflow-y: hidden;
  display: -webkit-box;
  display: -moz-box;
  display: flex;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: scrollbar;
  margin: 0px;
}

.nav-tabs  {
	border-bottom: none !important;
}

.tabbable-line > .nav-tabs > li {
  float: none;
  font-size: 1.1em;
}
 
.tabbable-line > .nav-tabs > li > a {
  margin-right: 0;
  color: #737373;
  cursor: pointer;
}

.tab-panel {
	background-color: #FFFFFF;
	margin-top: -1px;
	border-top: 1px solid #ddd;
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
	padding-top: 8px;
	padding-left: 8px;
	padding-right: 8px;
}

.hsb-table-header-fixed {
  border-collapse: separate;
  border-spacing: 0;
  margin-bottom: 0px;
  border-top: none;
  border-bottom: none !important;
  border-right: none !important;
}

.hsb-table-header-fixed thead tr th {
	position: -webkit-sticky;
  	position: sticky;
  	top: 0;
  	background-color: #fcfcfc;
  	border-top: 1px solid #ddd !important;
  	border-left: none !important;
  	border-bottom-width: 1px;
}

.hsb-table-header-fixed tfoot tr td {
	position: -webkit-sticky;
  	position: sticky;
  	bottom: 0;
  	background-color: #FFFFFF;
  	border-top: 1px solid #ddd !important;
  	border-left: none !important;
  	border-bottom-width: 1px;
}

.hsb-table-header-fixed {
	border-left: none !important;
}

.hsb-table-header-fixed tbody tr td {
	border-top: none !important;
  	border-left: none !important;
    word-break: break-all;
    word-wrap: break-word;
}

.hsb-table-header-fixed-with-tfoot tbody tr:last-child td {
	border-bottom: none !important;
}

.hsb-table-header-fixed thead tr > th:first-child, .hsb-table-header-fixed tbody tr > td:first-child, .hsb-table-header-fixed tfoot tr td:first-child {
  	border-left: 1px solid #ddd !important;
}

.td-vertical-middle > td {
    vertical-align: middle !important;
}

@media (max-width: 767px) {
    .text-left-not-xs, .text-center-not-xs, .text-right-not-xs, .text-justify-not-xs {
        text-align: inherit;
    }
    .text-left-xs {
        text-align: left;
    }
    .text-center-xs {
        text-align: center;
    }
    .text-right-xs {
        text-align: right;
    }
    .text-justify-xs {
        text-align: justify;
    }
}

.hsb-progress-arrow {
    padding: 0;
    list-style-type: none;
    clear: both;
    line-height: 12px;
    margin: 0 0px;
    text-align: left;
    background: transparent;
}

.hsb-progress-arrow li {
    float: left;
    padding: 10px 20px 10px 5px;
    background: #e4e7ed;
    color: #fff;
    position: relative;
    border-top: 1px solid #e4e7ed;
    border-bottom: 1px solid #e4e7ed;
    margin: 0 3px;
    width: 13%;
    white-space: nowrap;
    color: #000000;
}

.hsb-progress-arrow li:not(:first-child) {
    padding: 10px 20px 10px 20px;
}

.hsb-progress-arrow li:not(:first-child):before {
	background: transparent;
    content: '';
    border-left: 16px solid #f7f7f7;
    border-top: 16px solid transparent;
    border-bottom: 16px solid transparent;
    position: absolute;
    top: 0;
    left: 0;
}

.hsb-progress-arrow li:after {
    content: '';
    border-left: 16px solid #e4e7ed;
    border-top: 16px solid transparent;
    border-bottom: 16px solid transparent;
    position: absolute;
    top: 0;
    left: 100%;
    z-index: 20;
}

.hsb-progress-arrow li.active {
    background: #3e7cde;
    color: #FFFFFF;
}

.hsb-progress-arrow li.active:after {
    border-left-color: #3e7cde;
    padding: 0px;
}

.custom-pagination .pagination-label {
	margin-top: 6px !important;
	margin-left: 5px;
}

@media (max-width: 767px) {
	.hsb-progress-arrow li {
		width: 31%;
	}
	
	.table-responsive {
		margin-bottom: 5px !important;
		overflow-y: auto !important;
	}
	
	.custom-pagination ul {
		margin-bottom: 0px !important;
	}
}

.table-bordered th {
	text-align: center;
}

.x-panel {
	margin-bottom: 0px;
}

.block-ui-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 99999;
    display: none;
    background: rgba(255,255,255,0.5);
    color: #000;
}

.block-ui-wrapper-text {
	position: fixed;
	width: 150px;
	height: 40px;
	padding: 5px 5px 5px 0;
	background: rgba(0,0,0,0.8);
	color: #fff;
    top: 45%;
    left: 50%;
    text-align: center;
    margin-top: -50px;
    margin-left: -50px;
    font-size: 20px;
}

.block-ui-wrapper-text:after {
	position: absolute;
	margin-left: .1rem;
	content: ' ...';
	display: inline-block;
	animation: pocessing steps(4) 2s infinite;
	clip: rect(auto, 0px, auto, auto);
}

@keyframes pocessing {
	to {
		clip: rect(auto, 20px, auto, auto);
	}
}