@charset "utf-8";

/************************
	Self-Defined Style 
 ************************/

html, body {
	min-height: calc(99vh);
	scroll-behavior: smooth;
}

label {
	font-weight: bold;
}

a:hover {
	text-underline-offset: 2px;	
}

select > option:disabled {
	color: #cacaca;
}

.pw2-badge-lg {
	font-size: 1.0rem;
}

.pw2-bd-date {
	background-color: #dddddd;
	border: #aaaaaa 1px solid;	
}
.pw2-bd-last {
	background-color: #006a6a;
	border: #004a4a 1px solid;
	color: white;
}
.pw2-bd-block {
	border-bottom: #dddddd 1px solid;
	padding-top: .3rem;
	padding-bottom: .4rem;
}
.pw2-block-hover {
	position: relative;	
}
.pw2-block-hover::before {
  transform: scaleX(0);
  transform-origin: bottom right;
}
.pw2-block-hover:hover::before {
  transform: scaleX(1);
  transform-origin: bottom left;
}
.pw2-block-hover::before {
  content: " ";
  display: block;
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  inset: 0 0 0 0;
  background: #f0f0f0;
  transition: transform .2s ease;
}
.pw2-bd-brief-lg {
	background-color: #d5e8d4;
	padding-top: .5rem;
	padding-bottom: .7rem;
	padding-left: .9rem;
	padding-right: .9rem;
	border: #82b366 1px solid;
	font-weight: bold;
	font-size: 1.8rem;
	border-radius: 5px;
}
.pw2-bd-brief-sm {
	background-color: #d5e8d4;
	padding-top: .1rem;
	padding-bottom: .2rem;
	padding-left: .3rem;
	padding-right: .4rem;
	border: #82b366 1px solid;
	font-weight: bold;
	display: inline-block;
	margin-top: 3px;
	border-radius: 5px;
}
.pw2-bd-brief-sm-2 {
	background-color: #d5e8d4;
	padding-top: .1rem;
	padding-bottom: .2rem;
	padding-left: .3rem;
	padding-right: .4rem;
	border: #82b366 1px solid;
	font-weight: bold;
	display: inline-block;
	border-radius: 5px;
}

.pw2-bd-bl-y { /* bid list border left (show) */
	border-left: #006a6a solid 5px;
	padding-left:3px;
}
.pw2-bd-bl-n { /* bid list border left (hide) */
	padding-left:8px;
}

.pw2-opacity-1 {
	opacity: 0.2;
}

.pw2-opacity-2 {
	opacity: 0.4;
}

.pw2-opacity-3 {
	opacity: 0.6;
}

.pw2-opacity-4 {
	opacity: 0.8;
}

.pw2-border-3 {
    border-width:3px !important;
}

.pw2-main-content-bg {
	background-color: #fdfdfd;
}

.pw2-navbar-bg {
	background-color: #006a6a;
}

.pw2-footer-bg {
	background-color: #c4e3f2;
}

.pw2-page-title-block {
	padding: .5rem .5rem .5rem 0rem;
	border-bottom: #bbbbbb 1px dashed;	
}
.pw2-page-title-block > .h5 > small {
	padding-left: 1rem;
}

.pw2-list-item-bg {
	background: linear-gradient(180deg, #fbfbfb, #ffffff);
}
.pw2-list-item-bg:hover {
	background: #fbfbfb;
}

.pw2-cursor {
	cursor: pointer;
}

.pw2-border-3 {
	border-width:3px !important;
}

ol.pw2-bracket-ol {
	counter-reset: list;
}
ol.pw2-bracket-ol > li {
	list-style: none;
	position: relative;
	margin-bottom: .2rem;
	padding-left: .5rem;
}
ol.pw2-bracket-ol > li::before {
	counter-increment: list;
	content: "( " counter(list) " ) ";
	position: absolute;
	left: -2rem;
}

div.pw2-bt-s-1 {  /* div border-top */
	border-top: #bbbbbb 1px solid;
}
div.pw2-bb-s-1 {  /* div border-bottom */
	border-bottom: #bbbbbb 1px solid;
}

div.pw2-btn-group-toggle > label.btn-linear {
	background: linear-gradient(to bottom, #efefef 0%, #ffffff 100%);
	color: black;
	border: 1px solid #dadada;
	cursor: pointer;
}
div.pw2-btn-group-toggle > label.btn-linear.active {
	background: #0275d8;
	color: white;
	border: 1px solid #0275d8;
}

table .pw2-tb-y2 {  /* table-border-top-bottom */
	border-color: #cdcdcd;
	border-style: solid;
	border-width: 2px 0px 2px 0px;
}
table .pw2-tb-b1 {  /* table-border-bottom */
	border-color: #cdcdcd;
	border-style: solid;
	border-width: 0px 0px 1px 0px;
}
table .pw2-tb-b2 {  /* table-border-bottom-solid */
	border-color: #cdcdcd;
	border-style: solid;
	border-width: 0px 0px 2px 0px;
}
table .pw2-tb-b1-d {  /* table-border-bottom-dashed */
	border-color: #cdcdcd;
	border-style: dashed;
	border-width: 0px 0px 1px 0px;
}

div .pw2-bid-i-label {
	color: white;
	text-align: center;
	font-weight: bold;
	padding-top: .5rem;
	padding-bottom: .5rem;
	background-color: #999999;
	border-radius: 5px;
}
div .pw2-bid-i-data {
	padding-top: .5rem;
	padding-bottom: .5rem;
}

div .pw2-data-header {  /* border-top-bottom */
	border-color: #cdcdcd;
	border-style: solid;
	border-width: 2px 0px 2px 0px;
	padding: .8rem;
	font-weight: bold;
	background-color: #f0f0f5;
}
div .pw2-data-body {  /* border-bottom */
	border-color: #cdcdcd;
	border-style: solid;
	border-width: 0px 0px 1px 0px;
	padding: .8rem;
}

/* Time Line CSS */
.pw2-timeline { 
	position: relative; 
	padding-left: 1.4rem; 
	list-style: none;
}
.pw2-timeline::before {
	content: ""; 
	position: absolute; 
	left: 7px; 
	top: 5px; 
	bottom: 5px;
	width: 3px; 
	background: #dee2e6;
}
.pw2-timeline-item {
	position: relative;
	margin-bottom: 1.5rem;
}
.pw2-timeline-marker {
	position: absolute; 
	left: -22px; 
	top: 10px; 
	width: 16px; 
	height: 16px;
	border-radius: 50%; 
	background: #adb5bd; 
	border: 3px solid #fff;
	box-shadow: 0 0 0 2px #dee2e6; 
	z-index: 1;
}
.pw2-timeline-marker-current {
	background-color: #007bff;
	box-shadow: 0 0 0 2px #007bff;
}

/* 增加手勢與懸停效果 */
.pw2-timeline-card {
	transition: transform 0.2s,
	box-shadow 0.2s;
}
.pw2-timeline-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 0.5rem 1rem rgba(0,0,0,0.15)!important;
}
/************************
	Overwrite 3rd Style 
 ************************/

.navbar-nav > .nav-item:hover {
	background-color: #009595;
}
.navbar-nav > .nav-item > a {
	color: #ffffff;
}
.navbar-nav > .nav-item > a[disabled] {
	color: #bbbbbb;
	pointer-events: none;
}

.alert {
	display: flex;
	align-items: center;
	width: 100%;
}
.alert > i {
	font-size: 1.2rem;
	padding-left: .5rem;
	padding-right: 1rem;
}

.custom-control-label {
	font-weight: normal;
}
.custom-switch .custom-control-label::before {
	top: 0rem;
	width: 2.0rem;
	height: 1.5rem;
}
.custom-switch .custom-control-label::after {
	top: .1rem;
	width: 1.0rem;
	height: 1.2rem;
}

i.fa-envelope, i.fa-envelope-open {
	font-size: 1.4rem;
	padding-left: .2rem;
	padding-right: .2rem;
}
