@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;400&display=swap');

/* reset
---------------------------------------------------------*/

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fiel.accordion-set,input,textarea,p,blockquote,th,td {margin:0; padding:0;}
table {border-collapse:collapse;border-spacing:0;}
fiel.accordion-set,img,iframe {border:0;}
address,caption,cite,code,dfn,em,th,var {font-style:normal;font-weight:normal;}
q:before,q:after {content:'';}
abbr,acronym {border:0;}
select:focus,textarea:focus,input[type="text"]:focus,input[type="password"]:focus,button:focus{
  outline: 0;
}
a:active, a:hover,a:focus,select:focus {outline: 0 none;}

*:focus {outline: 0;}

select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #000;
}


/* common
---------------------------------------------------------*/

*,
:before,
:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  word-wrap: break-word;
  font-size: 1rem;
  color: #222;
  font-family:'Roboto',Microsoft JhengHei, sans-serif;
}

html,
body {
  position: relative;
  width: 100%;
}

a{
  text-decoration: none;
  color: #333;
  -webkit-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}

.font-sm{
  font-size: 0.85rem;
}

.font-xl{
  font-size: 3.5rem;
}

.text-blue{
  color: #004681;
}

/* page-user-a
---------------------------------------------------------*/

.page-user-a{
  background:url(../img/bg-page.png) no-repeat #f2e6fd top center;
  background-size: contain;
}

.page-user-b{
  background:url(../img/bg-page.png) no-repeat #f9f0ea top center;
  background-size: contain;
}

.page-user-c{
  background:url(../img/bg-page.png) no-repeat #e2f2fe top center;
  background-size: contain;
}

.page-user-d{
  background:url(../img/bg-page.png) no-repeat #f2f6e7 top center;
  background-size: contain;
}

.page-user-e{
  background:url(../img/bg-page.png) no-repeat #fae4eb top center;
  background-size: contain;
}

.page-user-f{
  background:url(../img/bg-page.png) no-repeat #f6f0e9 top center;
  background-size: contain;
}

/* brand-area
---------------------------------------------------------*/

.brand-area{
  padding: 15px 0 20px;
}

.brand-area .logo img{
  max-width: 100%;
  max-height: 60px;
}


/* navigation-bar
---------------------------------------------------------*/

.page-user-a .navigation-bar{
background: rgb(170,91,243);
background: linear-gradient(0deg, rgba(170,91,243,1) 4%, rgba(180,112,255,1) 45%, rgba(128,64,193,1) 95%);
}

.page-user-b .navigation-bar{
background: rgb(255,113,0);
background: linear-gradient(0deg, rgba(255,113,0,1) 4%, rgba(254,145,2,1) 45%, rgba(255,113,0,1) 95%);
}

.page-user-c .navigation-bar{
background: rgb(84,162,208);
background: linear-gradient(0deg, rgba(84,162,208,1) 4%, rgba(106,181,223,1) 45%, rgba(84,162,208,1) 95%);
}

.page-user-d .navigation-bar{
background: rgb(127,171,14);
background: linear-gradient(0deg, rgba(127,171,14,1) 4%, rgba(143,191,30,1) 41%, rgba(145,193,32,1) 45%, rgba(127,171,14,1) 95%);
}

.page-user-e .navigation-bar{
background: rgb(255,67,126);
background: linear-gradient(180deg, rgba(255,67,126,1) 0%, rgba(255,74,131,1) 56%, rgba(255,74,131,1) 100%);
}

.page-user-f .navigation-bar{
background: rgb(132,88,41);
background: linear-gradient(180deg, rgba(132,88,41,1) 0%, rgba(150,112,72,1) 37%, rgba(151,113,74,1) 67%, rgba(134,90,44,1) 100%);
}


/* navigation-bar
---------------------------------------------------------*/

.header-nav-wrap{
  display: flex;
  justify-content: space-between;
  font-size: 0.95rem;
  padding-left: 10px;
}

.header-nav .sub-menu-parent {
  position: relative;
}

.header-nav .sub-menu-parent i{
  font-size: 1.4rem;
  line-height: 1;
  display: inline-block;
  vertical-align: text-bottom;
}

.header-nav .sub-menu {
  background: #fff;
  font-size: 0.9rem;
  box-shadow: 0 0 3px 0 rgb(0,0,0,0.3);
  visibility: hidden;
  /* hides sub-menu */
  opacity: 0;
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -65px;
  width: 130px;
  transform: translateY(-2em);
  z-index: 1;
  transition: all 0.3s ease-in-out 0s, visibility 0s linear 0.3s, z-index 0s linear 0.01s;
}

.header-nav .sub-menu-parent:focus .sub-menu,
.header-nav .sub-menu-parent:focus-within .sub-menu,
.header-nav .sub-menu-parent:hover .sub-menu {
  visibility: visible;
  /* shows sub-menu */
  opacity: 1;
  z-index: 1;
  transform: translateY(0%);
  transition-delay: 0s, 0s, 0.3s;
  /* this removes the transition delay so the menu will be visible while the other styles transition */
}

.header-nav a {
  color: #fff;
  display: block;
  padding: 10px 6px;
  text-decoration: none;
  -webkit-transition:all .3s;
  -moz-transition:all .3s;
  -ms-transition:all .3s;
  transition:all .3s;
}

.header-nav-wrap ul,
.header-nav-wrap ul li {
  list-style-type: none;
  padding: 0;
  margin: 0;
}

.header-nav-wrap > ul > li {
  display: inline-block;
  letter-spacing: 1px;
}

.header-nav-wrap > ul > li:first-child {
  border-left: none;
}


.header-nav .sub-menu a{
  color: #333;
  padding: 7px 10px;
  box-shadow: inset 0 1px 0 0 rgba(0, 0, 0, 0.1);
}

.header-nav .sub-menu a:hover{
  color: #000;
}

@media (max-width: 900px) {

  .container .header-nav-wrap{
    display: none;
  }

}

/* mobile-nav
---------------------------------------------------------*/

.mobile-nav-wrap{
  display: none;
}

@media (max-width: 900px) {

  .container .mobile-nav-wrap{
    display: flex;
    color: #fff;
    cursor: pointer;
    justify-content: flex-end;
    position: relative;
  }

  .container .mobile-toggle{
    cursor: pointer;
    height: 45px;
    text-align: center;
    line-height: 45px;
    margin-left: 8px;
  }

  .container .mobile-toggle i{
    font-size: 1.4rem;
  }

}

/* menu-accordion
---------------------------------------------------------*/

.mobile-toggle-wrap,.mobile-toggle-wrap-1{
  position: absolute;
  width: 100%;
  left: 0;
  right: 0;
  top: 45px;
  background: #fff;
  box-shadow: 0 2px 5px 0 rgb(0,0,0,0.15);
  z-index: 4;
  display: none;

}

ul.menu-accordion {
  list-style: none;
  padding: 0;
}

ul.menu-accordion .inner {
  padding-left: 1em;
  overflow: hidden;
  display: none;
}

ul.menu-accordion > li > a{
  width: 100%;
  display: block;
  padding: 0.55rem 0.65rem;
  display: flex;
  box-shadow: inset 0 1px 0 0 rgba(0, 0, 0, 0.1);
  justify-content: space-between;
  transition: background 0.3s ease;
}

.top-nav-wrap .menu-accordion > li > a{
  box-shadow: inset 0 1px 0 #eaeaea;
  padding: 0.9em;
}

ul.menu-accordion li > a  i{
  transition:all 0.4s ease;
  font-size: 1.3em;
  line-height: 1;
}

ul.menu-accordion li > a.open{
  color: #B23C34;
}

ul.menu-accordion li > a.open i{
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
}

ul.menu-accordion li a.toggle:hover {
  background: rgba(0, 0, 0, 0.9);
}

ul.menu-accordion .inner li{
  list-style: none;
}

ul.menu-accordion .inner > li > a{
  padding: 5px;
  display: flex;
  justify-content: space-between;
}

ul.menu-accordion .inner > li a i{
  color: #777;
  font-size: 0.95em;
  margin-right: 5px;
}

ul.menu-accordion .inner.show {
  /*display: block;*/
}

ul.menu-accordion .inner .inner li{
  font-size: 0.95em;
}

ul.menu-accordion .inner .inner li a{
  padding: 5px;
}

ul.menu-accordion .inner .inner li:last-child a{
  padding: 5px 5px 15px 5px;
}


/* d-card
---------------------------------------------------------*/

.d-card{
  background: #fff;
  border-radius: 10px;
  padding: 30px 40px 30px;
}

.page-user-a .d-card{
-webkit-box-shadow: 3px 2px 0px 6px rgba(180,115,253,1);
-moz-box-shadow: 3px 2px 0px 6px rgba(180,115,253,1);
box-shadow: 3px 2px 0px 6px rgba(180,115,253,1);
}

.card-title{
  margin-bottom: 30px;
  text-align: center;
}

.card-title h1{
  font-size: 1.8rem;
}

.card-title h2{
  font-size: 1.6rem;
}

.card-title h3{
  font-size: 1.45rem;
}


@media (max-width: 768px) {

  .d-card{
    background: #fff;
    border-radius: 10px;
    padding: 20px;
  }

}


/* breadcrumb
---------------------------------------------------------*/

.breadcrumb{
  padding: 15px 0 0;
}

hr{
  color: #ADB5BD;
}


/* footer
---------------------------------------------------------*/

.footer{
  padding: 20px 15px;
  text-align: center;
}

/* test-box
---------------------------------------------------------*/

.test-box .icon-btn {
  text-align: center;
  line-height: 1;
}

.test-box .icon-btn i{
  font-size: 9rem;
  cursor: pointer;
  color: #2497f3;
  -webkit-transition:all .3s;
  -moz-transition:all .3s;
  -ms-transition:all .3s;
  transition:all .3s;
}

.test-box .icon-btn i:hover{
  color: #0b82e1;
}


/* alert-primary
---------------------------------------------------------*/

.alert-primary{
  background: rgba(0, 128, 255, 0.1);
}

.alert-secondary{
  background: rgba(129, 167, 205, 0.1);
}

.alert-success{
  background: rgba(24, 210, 107, 0.1);
}

.alert-danger{
  background:rgba(255, 63, 63, 0.1);
}

.alert-warning{
  background:rgba(255, 168, 0, 0.1);
}

.alert-info{
  background: rgba(0, 184, 212, 0.1);
}


/* user-box
---------------------------------------------------------*/

.table{
  word-wrap: break-word;
  font-size: 0.9rem;
}

.table i{
  font-size: 1.3rem;
}

.table .icon-btn{
  
  line-height: 1;
}

.table .icon-btn i{
  font-size: 2.3rem;
}

.table>:not(caption)>*>*{
  padding: .65rem .65rem;
}

@media (max-width: 1100px) {

  .table-responsive .table{
    width: 900px;
  }

}

/* sound
---------------------------------------------------------*/

.sound {
  width: 100px;
  height: 100px;
  position: relative;
  cursor: pointer;
  display: inline-block;
}

.sound svg{
  vertical-align: inherit;
}

.sound--icon {
  color: #2497f3;
  width: 100%;
  height: 100%;
  line-height: 100%;
  font-size: 100px;
  display: block;
  margin: auto;
}

.sound--wave {
  position: absolute;
  border: 4px solid transparent;
  border-right: 4px solid #2497f3;
  border-radius: 50%;
  transition: all 200ms;
  margin: auto;
  top: 0;
  bottom: 0;
  left: 0.2rem;
  right: 0;
}

.sound--wave_one {
  width: 25%;
  height: 25%;
  animation: wave 1s infinite;
}

.sound--wave_two {
  width: 50%;
  height: 50%;
  animation: wave 1s infinite;
  animation-delay: 0.25s;
}

.sound--wave_three {
  width: 75%;
  height: 75%;
  animation: wave 1s infinite;
  animation-delay: 0.5s;
}

@keyframes wave {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}


/* mic pulse
---------------------------------------------------------*/

.btn-circle {
  border: none;
  padding: 0;
  border-radius: 100%;
  width: 100px;
  height: 100px;
  font-size: 3em;
  color: #fff;
  padding: 0;
  margin: 0;
  background: #2497f3;
  position: relative;
  z-index: 999;
  display: inline-block;
  line-height: 100px;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  background-image: none;
}

.pulse-ring {
  content: "";
  width: 100px;
  height: 100px;
  background: #2497f3;
  border: 5px solid #2497f3;
  border-radius: 50%;
  position: absolute;
  top: -0px;
  left: -0px;
  animation: pulsate infinite 1.5s;
}

.btn-circle .pulse-ring {
  background: transparent;
}

@-webkit-keyframes pulsate {
  0% {
    -webkit-transform: scale(1, 1);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(1.3, 1.3);
    opacity: 0;
  }
}

/* cursor
---------------------------------------------------------*/

.datepicker{
  font-size: 0.9rem;
  font-family: 'Roboto', sans-serif;
}

.cursor{
  cursor: pointer;
}


/* userView-block
---------------------------------------------------------*/

.userView-block .user-info ul{
  list-style: none;
}

.userView-block .cover{
  padding: 10px;
  height: 200px;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #dcdcdc;
}

.userView-block .cover img{
  max-width: 100%;
  max-height: 100%;
}

@media (max-width: 768px) {

  .userView-block .cover{
    margin-bottom: 15px;
  }

}

/* list-item
---------------------------------------------------------*/

.list-item{
  border: 1px solid #ced4da;
  border-radius: 10px;
  padding: 15px;
  margin-bottom: 15px;
  font-size: 0.9rem;
}

.list-item .entry-body{
  display: flex;
}

.list-item .entry-header{
  width: 100px;
  line-height: 1.2;
}

.list-item .entry-content{
  width: calc( 100% - 100px );
  padding-left: 15px;
}

@media (max-width: 768px) {

  .list-item .entry-header{
    width: 60px;
    line-height: 1.2;
  }

  .list-item .entry-content{
    width: calc( 100% - 60px );
    padding-left: 10px;
  }

}

div.memberName h6{
  line-height: 43px;
}

div.memberName{
  left: 100px;
}

.container-d{
  width: 990px;
  margin: 0 auto;
}

nav.chgMember{
  margin-bottom: -10px;
  width: 100%;
}


/* login-wrap
---------------------------------------------------------*/

.page-login{
  background: url(../images/bg.gif);
}

.login-wrap{
  width: 990px;
  height: 560px;
  margin: 30px auto;
  display: flex;
  background: url(../images/loginbg.png) no-repeat right top;
}

.login-banner{
  width: 630px;
  height: 560px;
  display: block;
}

.login-from-wrap{
  width: 360px;
  height: 560px;
  display: block;
  position: relative;
}

.login-logo{
  display: block;
  width: 250px;
  height: 220px;
  left: 58px;
  position: absolute;
  top:0px;
  display: flex;
  align-items: center;
  padding: 30px;
  justify-content: center;
}

.login-logo img{
  max-width: 100%;
  max-height: 100%;
}

.login-from{
  width: 290px;
  position: absolute;
  bottom: 20px;
  left: 50%;
  margin-left: -145px;
}

@media (max-width: 990px) {

  .login-wrap{
    width: 359px;
  }

  .login-banner{
    display: none;
  }

}
