/**
 *  Custom CSS
 */

/* noto-sans-kr-100 - latin_korean */
@font-face {
  font-family: 'Noto Sans Korean';
  font-style: normal;
  font-weight: 100;
  src: url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-100.eot'); /* IE9 Compat Modes */
  /* src: local('Noto Sans Thin'), local('NotoSans-Thin'), */
  src: local(''),
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-100.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-100.woff2') format('woff2'), /* Super Modern Browsers */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-100.woff') format('woff'), /* Modern Browsers */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-100.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-100.svg#NotoSansKR') format('svg'); /* Legacy iOS */
}
/* noto-sans-kr-300 - latin_korean */
@font-face {
  font-family: 'Noto Sans Korean';
  font-style: normal;
  font-weight: 300;
  src: url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-300.eot'); /* IE9 Compat Modes */
  /* src: local('Noto Sans Light'), local('NotoSans-Light'), */
  src: local(''),
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-300.woff') format('woff'), /* Modern Browsers */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-300.svg#NotoSansKR') format('svg'); /* Legacy iOS */
}

/* noto-sans-kr-350 - latin_korean */
/* Hestia version */
@font-face {
  font-family: 'Noto Sans Korean';
  font-style: normal;
  font-weight: 350;
  /* src: local('Noto Sans DemiLight'), local('NotoSans-DemiLight'), */
  src: local(''),
       url('/static/html/assets/fonts/notosans/NotoSansKR-DemiLight-Hestia.eot'),
       url('/static/html/assets/fonts/notosans/NotoSansKR-DemiLight-Hestia.eot?#iefix') format('embedded-opentype'),
       url('/static/html/assets/fonts/notosans/NotoSansKR-DemiLight-Hestia.woff') format('woff'),
       url('/static/html/assets/fonts/notosans/NotoSansKR-DemiLight-Hestia.otf') format('opentype');
}

/* noto-sans-kr-regular - latin_korean */
@font-face {
  font-family: 'Noto Sans Korean';
  font-style: normal;
  font-weight: 400;
  src: url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-regular.eot'); /* IE9 Compat Modes */
  /* src: local('Noto Sans Regular'), local('NotoSans-Regular'), */
  src: local(''),
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-regular.woff') format('woff'), /* Modern Browsers */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-regular.svg#NotoSansKR') format('svg'); /* Legacy iOS */
}
/* noto-sans-kr-500 - latin_korean */
@font-face {
  font-family: 'Noto Sans Korean';
  font-style: normal;
  font-weight: 500;
  src: url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-500.eot'); /* IE9 Compat Modes */
  /* src: local('Noto Sans Medium'), local('NotoSans-Medium'), */
  src: local(''),
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-500.woff2') format('woff2'), /* Super Modern Browsers */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-500.woff') format('woff'), /* Modern Browsers */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-500.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-500.svg#NotoSansKR') format('svg'); /* Legacy iOS */
}
/* noto-sans-kr-700 - latin_korean */
@font-face {
  font-family: 'Noto Sans Korean';
  font-style: normal;
  font-weight: 700;
  src: url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-700.eot'); /* IE9 Compat Modes */
  /* src: local('Noto Sans Bold'), local('NotoSans-Bold'), */
  src: local(''),
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-700.woff') format('woff'), /* Modern Browsers */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-700.svg#NotoSansKR') format('svg'); /* Legacy iOS */
}
/* noto-sans-kr-900 - latin_korean */
@font-face {
  font-family: 'Noto Sans Korean';
  font-style: normal;
  font-weight: 900;
  src: url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-900.eot'); /* IE9 Compat Modes */
  /* src: local('Noto Sans Black'), local('NotoSans-Black'), */
  src: local(''),
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-900.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-900.woff2') format('woff2'), /* Super Modern Browsers */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-900.woff') format('woff'), /* Modern Browsers */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-900.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/static/html/assets/fonts/notosans/noto-sans-kr-v13-latin_korean-900.svg#NotoSansKR') format('svg'); /* Legacy iOS */
}


body {
  font-family:"Noto Sans Korean", sans-serif;
  font-size:12px;
  letter-spacing:0;
}
.breadcrumb,
.title-text,
.card-title,
.modal-title,
pre, code, kbd, samp,
a           { font-family: "Noto Sans Korean", sans-serif !important; text-transform:none; }
a.disabled  { cursor:default; }
pre         { overflow:hidden; white-space:pre-wrap; }

footer      { padding:10px 16px !important; color:rgba( 60, 70, 100, 1.0) !important;
              display:flex; justify-content:space-between;
              border-left:1px solid rgba( 30, 45, 70, 0.5);
              border-top:1px solid rgba( 30, 45, 70, 0.3) !important; }
.dashboard+ footer { border:none !important; background-color:rgba(255,255,255, 1.0); }

/**
 * Input Placeholder
 */
input::-webkit-input-placeholder {
  color:rgba( 50, 60,100, 0.5) !important;
  font-weight:350;
}
input:-ms-input-placeholder {
  color:rgba( 50, 60,100, 0.5) !important;
  font-weight:350;
}
textarea::-webkit-input-placeholder {
  color:rgba( 50, 60,100, 0.5) !important;
  font-weight:350;
}
textarea:-ms-input-placeholder {
  color:rgba( 50, 60,100, 0.5) !important;
  font-weight:350;
}
input::placeholder {
  color:rgba( 50, 60,100, 0.5) !important;
  font-weight:350;
}
textarea::placeholder {
  color:rgba( 50, 60,100, 0.5) !important;
  font-weight:350;
}

address     { margin-top:8px; margin-bottom:5px; font-size:12px; font-weight:300; }
.footer_item:not(:first-of-type)::before  { content:""; width:1px; height:11px; margin:0 7px 0 6px;
                                            display:inline-block; background-color:#d7d7d7; }
br+.footer_item::before  { content:none !important; }

/* Spacing */
.mLeft_Auto { margin-left:auto   !important; }
.mLeft0     { margin-left:0      !important; }
.mLeft1     { margin-left:1px    !important; }
.mLeft2     { margin-left:2px    !important; }
.mLeft3     { margin-left:3px    !important; }
.mLeft4     { margin-left:4px    !important; }
.mLeft5     { margin-left:5px    !important; }
.mLeft6     { margin-left:6px    !important; }
.mLeft7     { margin-left:7px    !important; }
.mLeft8     { margin-left:8px    !important; }
.mLeft9     { margin-left:9px    !important; }
.mLeft10    { margin-left:10px   !important; }
.mLeft13    { margin-left:13px   !important; }
.mLeft15    { margin-left:15px   !important; }
.mLeft20    { margin-left:20px   !important; }
.mLeft25    { margin-left:25px   !important; }
.mLeft30    { margin-left:30px   !important; }
.mLeft35    { margin-left:35px   !important; }
.mLeft40    { margin-left:40px   !important; }
.mLeft50    { margin-left:50px   !important; }
.mLeft60    { margin-left:60px   !important; }
.mLeft100   { margin-left:100px  !important; }
.pLeft0     { padding-left:0     !important; }
.pLeft1     { padding-left:1px   !important; }
.pLeft2     { padding-left:2px   !important; }
.pLeft3     { padding-left:3px   !important; }
.pLeft4     { padding-left:4px   !important; }
.pLeft5     { padding-left:5px   !important; }
.pLeft6     { padding-left:6px   !important; }
.pLeft7     { padding-left:7px   !important; }
.pLeft8     { padding-left:8px   !important; }
.pLeft9     { padding-left:9px   !important; }
.pLeft10    { padding-left:10px  !important; }
.pLeft15    { padding-left:15px  !important; }
.pLeft20    { padding-left:20px  !important; }
.pLeft25    { padding-left:25px  !important; }
.pLeft30    { padding-left:30px  !important; }
.pLeft35    { padding-left:35px  !important; }
.pLeft40    { padding-left:40px  !important; }
.pLeft50    { padding-left:50px  !important; }
.pLeft100   { padding-left:100px !important; }

.mRight_Auto{ margin-left:auto   !important; }
.mRight0    { margin-right:0     !important; }
.mRight3    { margin-right:3px   !important; }
.mRight5    { margin-right:5px   !important; }
.mRight8    { margin-right:8px   !important; }
.mRight10   { margin-right:10px  !important; }
.mRight15   { margin-right:15px  !important; }
.mRight20   { margin-right:20px  !important; }
.mRight25   { margin-right:25px  !important; }
.mRight30   { margin-right:30px  !important; }
.pRight0    { padding-right:0px  !important; }
.pRight3    { padding-right:3px  !important; }
.pRight5    { padding-right:5px  !important; }
.pRight10   { padding-right:10px !important; }
.pRight15   { padding-right:15px !important; }
.pRight20   { padding-right:20px !important; }
.pRight30   { padding-right:30px !important; }
.pRight35   { padding-right:35px !important; }
.pRight40   { padding-right:40px !important; }
.pRight50   { padding-right:50px !important; }

.mTop-20    { margin-top:-20px    !important; }
.mTop-10    { margin-top:-10px    !important; }
.mTop-5     { margin-top:-5px     !important; }
.mTop0      { margin-top:0        !important; }
.mTop1      { margin-top:1px      !important; }
.mTop2      { margin-top:2px      !important; }
.mTop3      { margin-top:3px      !important; }
.mTop5      { margin-top:5px      !important; }
.mTop6      { margin-top:6px      !important; }
.mTop7      { margin-top:7px      !important; }
.mTop8      { margin-top:8px      !important; }
.mTop9      { margin-top:9px      !important; }
.mTop10     { margin-top:10px     !important; }
.mTop15     { margin-top:15px     !important; }
.mTop20     { margin-top:20px     !important; }
.mTop25     { margin-top:25px     !important; }
.mTop30     { margin-top:30px     !important; }
.mTop35     { margin-top:35px     !important; }
.mTop40     { margin-top:40px     !important; }
.mTop45     { margin-top:45px     !important; }
.mTop50     { margin-top:50px     !important; }
.mTop80     { margin-top:80px     !important; }
.mTop120    { margin-top:120px    !important; }
.mBot-15    { margin-bottom:-15px !important; }
.mBot0      { margin-bottom:0     !important; }
.mBot2      { margin-bottom:2px   !important; }
.mBot3      { margin-bottom:3px   !important; }
.mBot5      { margin-bottom:5px   !important; }
.mBot8      { margin-bottom:8px   !important; }
.mBot10     { margin-bottom:10px  !important; }
.mBot15     { margin-bottom:15px  !important; }
.mBot20     { margin-bottom:20px  !important; }
.mBot25     { margin-bottom:25px  !important; }
.mBot30     { margin-bottom:30px  !important; }
.mBot35     { margin-bottom:35px  !important; }
.mBot40     { margin-bottom:40px  !important; }
.mBot50     { margin-bottom:50px  !important; }

.pTop0      { padding-top:0       !important; }
.pTop2      { padding-top:2px     !important; }
.pTop3      { padding-top:3px     !important; }
.pTop5      { padding-top:5px     !important; }
.pTop10     { padding-top:10px    !important; }
.pTop15     { padding-top:15px    !important; }
.pTop20     { padding-top:20px    !important; }
.pTop25     { padding-top:25px    !important; }
.pTop30     { padding-top:30px    !important; }
.pTop35     { padding-top:35px    !important; }
.pTop40     { padding-top:40px    !important; }
.pTop45     { padding-top:45px    !important; }
.pTop50     { padding-top:50px    !important; }
.pBot0      { padding-bottom:0    !important; }
.pBot2      { padding-bottom:2px  !important; }
.pBot3      { padding-bottom:3px  !important; }
.pBot5      { padding-bottom:5px  !important; }
.pBot7      { padding-bottom:7px  !important; }
.pBot10     { padding-bottom:10px !important; }
.pBot15     { padding-bottom:15px !important; }
.pBot16     { padding-bottom:16px !important; }
.pBot20     { padding-bottom:20px !important; }
.pBot30     { padding-bottom:30px !important; }
.pBot40     { padding-bottom:40px !important; }
.pBot50     { padding-bottom:50px !important; }

.mHside3    { margin-left:3px   !important; margin-right:3px    !important; }
.mHside5    { margin-left:5px   !important; margin-right:5px    !important; }
.mHside10   { margin-left:10px  !important; margin-right:10px   !important; }
.mHside15   { margin-left:15px  !important; margin-right:15px   !important; }
.mHside20   { margin-left:20px  !important; margin-right:20px   !important; }
.mHside30   { margin-left:30px  !important; margin-right:30px   !important; }
.mHside40   { margin-left:40px  !important; margin-right:40px   !important; }
.mVside3    { margin-top:3px    !important; margin-bottom:3px   !important; }
.mVside5    { margin-top:5px    !important; margin-bottom:5px   !important; }
.mVside10   { margin-top:10px   !important; margin-bottom:10px  !important; }
.mVside15   { margin-top:15px   !important; margin-bottom:15px  !important; }
.mVside20   { margin-top:20px   !important; margin-bottom:20px  !important; }
.mVside30   { margin-top:30px   !important; margin-bottom:30px  !important; }
.mVside40   { margin-top:40px   !important; margin-bottom:40px  !important; }

.pHside0    { padding-left:0px  !important; padding-right:0px   !important; }
.pHside3    { padding-left:3px  !important; padding-right:3px   !important; }
.pHside5    { padding-left:5px  !important; padding-right:5px   !important; }
.pHside6    { padding-left:6px  !important; padding-right:6px   !important; }
.pHside7    { padding-left:7px  !important; padding-right:7px   !important; }
.pHside8    { padding-left:8px  !important; padding-right:8px   !important; }
.pHside9    { padding-left:9px  !important; padding-right:9px   !important; }
.pHside10   { padding-left:10px !important; padding-right:10px  !important; }
.pHside15   { padding-left:15px !important; padding-right:15px  !important; }
.pHside20   { padding-left:20px !important; padding-right:20px  !important; }
.pHside25   { padding-left:25px !important; padding-right:25px  !important; }
.pHside30   { padding-left:30px !important; padding-right:30px  !important; }
.pHside40   { padding-left:40px !important; padding-right:40px  !important; }
.pHside45   { padding-left:45px !important; padding-right:45px  !important; }
.pHside50   { padding-left:50px !important; padding-right:50px  !important; }
.pVside0    { padding-top:0px   !important; padding-bottom:0px  !important; }
.pVside3    { padding-top:3px   !important; padding-bottom:3px  !important; }
.pVside5    { padding-top:5px   !important; padding-bottom:5px  !important; }
.pVside10   { padding-top:10px  !important; padding-bottom:10px !important; }
.pVside15   { padding-top:15px  !important; padding-bottom:15px !important; }
.pVside20   { padding-top:20px  !important; padding-bottom:20px !important; }
.pVside25   { padding-top:25px  !important; padding-bottom:25px !important; }
.pVside30   { padding-top:30px  !important; padding-bottom:30px !important; }
.pVside40   { padding-top:40px  !important; padding-bottom:40px !important; }
.pVside45   { padding-top:45px  !important; padding-bottom:45px !important; }
.pVside50   { padding-top:50px  !important; padding-bottom:50px !important; }

.mSides10   { margin:10px !important; }
.mSides15   { margin:15px !important; }
.mSides20   { margin:20px !important; }
.mSides30   { margin:30px !important; }
.mSides40   { margin:40px !important; }
.mSides50   { margin:50px !important; }

.pSides10   { padding:10px !important; }
.pSides20   { padding:20px !important; }
.pSides30   { padding:30px !important; }
.pSides40   { padding:40px !important; }
.pSides50   { padding:50px !important; }

.noMargin   { margin:0 !important; }
.noPadding  { padding:0 !important; }

/* Width */
.w30        { width:30px  !important; }
.w40        { width:40px  !important; }
.w50        { width:50px  !important; }
.w60        { width:60px  !important; }
.w70        { width:70px  !important; }
.w80        { width:80px  !important; }
.w90        { width:90px  !important; }
.w100       { width:100px !important; }
.w110       { width:110px !important; }
.w120       { width:120px !important; }
.w130       { width:130px !important; }
.w140       { width:140px !important; }
.w150       { width:150px !important; }
.w160       { width:160px !important; }
.w170       { width:170px !important; }
.w180       { width:180px !important; }
.w200       { width:200px !important; }
.w210       { width:210px !important; }
.w220       { width:220px !important; }
.w230       { width:230px !important; }
.w240       { width:240px !important; }
.w250       { width:250px !important; }
.w280       { width:280px !important; }
.w300       { width:300px !important; }
.w350       { width:350px !important; }
.w400       { width:400px !important; }
.w450       { width:450px !important; }
.w500       { width:500px !important; }

.w174       { width:174px !important; }

.w30p       { width:30%   !important; }
.w33p       { width:33%   !important; }
.w50p       { width:50%   !important; }
.w60p       { width:60%   !important; }
.w70p       { width:70%   !important; }
.w80p       { width:80%   !important; }
.w90p       { width:90%   !important; }
.w100p      { width:100%  !important; }

.wCalendar  { width:218px !important; }

.max_w50    { max-width:50px  !important; }
.max_w80    { max-width:80px  !important; }
.max_w100   { max-width:100px !important; }
.max_w150   { max-width:150px !important; }
.max_w180   { max-width:180px !important; }
.max_w200   { max-width:200px !important; }
.max_w250   { max-width:250px !important; }
.max_w300   { max-width:300px !important; }
.max_w350   { max-width:350px !important; }
.max_w400   { max-width:400px !important; }
.max_w450   { max-width:450px !important; }
.max_w500   { max-width:500px !important; }
.max_w600   { max-width:600px !important; }

.min_w100   { min-width:100px !important; }
.min_w120   { min-width:120px !important; }
.min_w200   { min-width:200px !important; }
.min_w300   { min-width:300px !important; }

/* Height */
.h27        { height:27px  !important; }
.h50p       { height:50%  !important; }
.h100p      { height:100% !important; }

.max_h50    { max-height:50px  !important; }
.max_h80    { max-height:80px  !important; }
.max_h100   { max-height:100px !important; }
.max_h150   { max-height:150px !important; }
.max_h180   { max-height:180px !important; }
.max_h200   { max-height:200px !important; }
.max_h240   { max-height:240px !important; }
.max_h250   { max-height:250px !important; }
.max_h300   { max-height:300px !important; }
.max_h350   { max-height:350px !important; }
.max_h400   { max-height:400px !important; }
.max_h450   { max-height:450px !important; }
.max_h500   { max-height:500px !important; }
.max_h600   { max-height:600px !important; }

.min_h100   { min-height:100px !important; }
.min_h120   { min-height:120px !important; }
.min_h200   { min-height:200px !important; }
.min_h240   { min-height:240px !important; }
.min_h300   { min-height:300px !important; }
.min_w300   { min-width:300px !important; }

.noHeight   { height:0 !important; }

/* Border */
.border_top:not(tr)           { border-top:   1px solid rgba(210,220,230, 0.5) !important; }
.border_top.thin:not(tr)      { border-top:   1px solid rgba(210,220,230, 0.3) !important; }
.border_top.thick:not(tr)     { border-top:   1px solid rgba(200,210,220, 1.0) !important; }
.border_bottom:not(tr)        { border-bottom:1px solid rgba(210,220,230, 0.5) !important; }
.border_bottom.thin:not(tr)   { border-bottom:1px solid rgba(210,220,230, 0.3) !important; }
.border_bottom.thick:not(tr)  { border-bottom:1px solid rgba(200,210,220, 1.0) !important; }
.borders_top       th,
.borders_top       td   { border-top:1px solid rgba(210,220,230, 1.0) !important; }
.borders_top.thick th,
.borders_top.thick td   { border-top:1px solid rgba( 50, 60,100, 1.0) !important; }

.border_red             { border:1px solid rgba(245, 50, 90, 1.0); }
.border_left            { border-left:1px solid rgba(210,220,230, 0.5); }
.border_left_thick      { border-left:1px solid rgba(210,220,230, 1.0); }
.border_right           { border-right:1px solid rgba(210,220,230, 0.5); }
.border_right_thick     { border-right:1px solid rgba(210,220,230, 1.0); }
.border_side            { border-left:1px solid rgba(210,220,230, 0.5); border-right:1px solid rgba(210,220,230, 0.5); }
.border_side_thick      { border-left:1px solid rgba(210,220,230, 1.0); border-right:1px solid rgba(210,220,230, 1.0); }

.noBorder,
.noBorders  tr,
.noBorders  th,
.noBorders  td  { border:none !important; background-image:none !important; }

/* Flex */
.flexColumn           { flex-direction:column; }
.flexTop              { display:flex; align-items:flex-start; }
.flexBot              { display:flex; align-items:flex-end; }
.flexMid              { display:flex; align-items:center; }
.flexStretch          { display:flex; align-items:stretch; }
.flexLeft             { display:flex; justify-content:flex-start; }
.flexRight            { display:flex; justify-content:flex-end; }
.flexBetween          { display:flex; justify-content:space-between; }
.flexAround           { display:flex; justify-content:space-around; }
.flexCenter           { display:flex; justify-content:center; }
.flexCenter_self      { display:flex; align-self:center; }
.flexCentral          { display:flex; align-items:center; justify-content:center; }
.flexWrap             { display:flex; flex-wrap:wrap; }
.flexNoWrap           { display:flex; flex-wrap:nowrap; }
.flexSelfStrech       { display:flex; align-self:stretch; }
.flexMid_SelfStrech   { display:flex; align-items:center; align-self:stretch; }
.flex_0               { flex:0; }
.flex_05              { flex:0.5; }
.flex_1               { flex:1; }
.flex_15              { flex:1.5; }
.flex_2               { flex:2; }
.flex_25              { flex:2.5; }
.flex_3               { flex:3; }
.flex_35              { flex:3.5; }

.space5>  *:not(:first-child)  { margin-left:5px; }

/* Float */
.floatL               { float:left; }
.floatR               { float:right; }

/* Pointer */
.noPointer            { cursor:default; }
.pointer              { cursor:pointer; }
.noEvent              { pointer-events:none; }

/* Round */
.round_3              { border-radius:3px; }
.round_5              { border-radius:5px; }
.round_10             { border-radius:10px; overflow:hidden; }
.round_full           { border-radius:30px; }

/* Text Style */
.default_color      { color:rgba( 50, 60,100, 1.0) !important; }
.white              { color:rgba(255,255,255, 1.0) !important; }
.red                { color:rgba(245, 50, 90, 1.0) !important; }
.red_deep           { color:rgba(250, 40, 60, 1.0) !important; }
.red_shallow        { color:rgba(255,150,150, 1.0) !important; }
.orange             { color:rgba(250,150, 50, 1.0) !important; }
.blue               { color:rgba( 20,160,230, 1.0) !important; }
.blue_deep          { color:rgba(  0,120,255, 1.0) !important; }
.blue_shallow       { color:rgba(150,200,255, 1.0) !important; }
.blue_reddish       { color:rgba(180,200,255, 1.0) !important; }
.green              { color:rgba( 20,170, 20, 1.0) !important; }
.gray               { color:rgba(160,160,160, 1.0) !important; }
.gray_shallow       { color:rgba(180,180,180, 1.0) !important; }
.silver             { color:rgba(210,210,210, 1.0) !important; }
.black              { color:rgba(  0,  0,  0, 0.8) !important; }
.black_pure         { color:rgba(  0,  0,  0, 1.0) !important; }
.underline          { border-bottom:1px solid; }
.pink_vivid         { padding:0 3px; background-color:rgba(255,100,200, 0.3); }
.pupple_vivid       { padding:0 3px; background-color:rgba(100,100,255, 0.3); }
.blue_vivid         { padding:0 3px; background-color:rgba( 20,160,230, 0.3); }
.green_vivid        { padding:0 3px; background-color:rgba(100,200, 80, 0.3); }

.red_border               { border-color:rgba(250, 40, 60, 0.6); }
.red_border:focus         { border-color:rgba(250, 40, 60, 1.0); }
.red_border:hover         { border-color:rgba(250, 40, 60, 1.0); }
.red_border_shallow       { border-color:rgba(255,150,150, 1.0); }
.red_border_shallow:focus,
.red_border_shallow:hover { border-color:rgba(250, 40, 60, 1.0); }
.gray_border              { border-color:rgba(180,180,180, 1.0); }
.gray_border_inner        { box-shadow:0 0 0 1px rgba(180,180,180, 1.0); }

.green_bg           { background-color:rgba(145,175, 60, 1.0) !important; }
.blue_bg            { background-color:rgba( 50,200,255, 1.0) !important; }
.red_bg             { background-color:rgba(245, 50, 90, 1.0) !important; color:rgba(255,255,255, 1.0); }
.orange_bg          { background-color:rgba(250,150, 50, 1.0) !important; }
.gray_bg            { background-color:rgba(210,220,230, 0.2) !important; }
                  .sub_text        { color:rgba( 50, 60,100, 0.6); font-weight:350; margin-left:5px; transition:color 0.3s; }
                  .sub_text:hover,
.text_hover:hover .sub_text        { color:rgba( 50, 60,100, 0.9); }

.fw_thin    { font-weight:300; }
.fw_normal  { font-weight:350; }
.fw_bold    { font-weight:500 !important; }
.fw_bolder  { font-weight:600 !important; }
.fw_black   { font-weight:700 !important; }
.fw_heavy   { font-weight:900; }

.fs_mini    { font-size:0.7em; }
.fs_small   { font-size:0.8em; }
.fs_same    { font-size:0.9em; }
.fs_1em     { font-size:1em; }
.fs_semi    { font-size:1.1em; }
.fs_large   { font-size:1.2em; }
.fs_big     { font-size:1.5em; }
.fs_double  { font-size:2.0em; }
.fs_10p     { font-size:10px; }
.fs_11p     { font-size:11px; }
.fs_12p     { font-size:12px; }
.fs_13p     { font-size:13px; }
.fs_14p     { font-size:14px; }
.fs_16p     { font-size:16px; }
.fs_18p     { font-size:18px; }
.fs_20p     { font-size:20px; }

.lh_fit     { line-height:1.0em; }
.lh_low     { line-height:1.2em; }
.lh_medium  { line-height:1.5em; }
.lh_high    { line-height:2.0em; }
.lh_vivid   { line-height:1.5em; }

.dimmed       { font-weight:300 !important; color:rgba( 50, 60,100, 0.6) !important; }
.dimmed_white { font-weight:300 !important; color:rgba(255,255,255, 0.6) !important; }

.bullet:not(ul)::before     { content:"• "; }
.noBullet                   { list-style-type:none; }
ol>         li.noBullet,
ul>         li.noBullet     { margin-left:-20px; }
ol.pLeft15> li.noBullet,
ul.pLeft15> li.noBullet     { margin-left:-15px; }
ul>         li.sub_list     { margin-left:0; list-style-type:none; text-indent:-0.8em }
ul>         li.sub_list::before  { content:"- "; }
i.noText                    { width:1em; overflow:hidden; display:inline-block; }
i.noText::before            { margin-right:1em; }
i.noText.mdi-wifi,
i.noText.mdi-wifi-off       { font-size:16px; line-height:10px; }
td>i.noText.mdi-wifi,
td>i.noText.mdi-wifi-off    { vertical-align:text-bottom; }


/* 단위, 기호 */
.usage,
.price                      { color:rgba(  0, 70,225, 1.0); font-weight:500; }
.price_text                 { color:rgba(  0, 70,225, 1.0); font-weight:400; }
.price_zero                 { color:rgba(  0,  0,  0, 0.6); font-weight:400; }
.amount,
.price_per                  { color:rgba(  0,  0,  0, 1.0); font-weight:500; }
        .unit               { color:rgba( 50, 60,100, 0.8); font-weight:300; margin-left:5px; }
.label> .unit               { color:inherit; font-size:0.8em; font-weight:300; opacity:0.6; margin-left:3px; }
        .unit_won::before   { content:'\20A9'; margin-right:5px; }
.divider                    { margin:0 5px; font-size:0.8em; opacity:0.6; }
.divider_wide               { margin:0 10px; font-size:0.8em; opacity:0.6; }
.v_divider_line             { display:inline-flex; height:60%; vertical-align:middle; }
.v_divider_line::before     { content:''; width:0; height:100%; margin:0 6px;
                              display:block; border-left:1px solid rgba(150,160,170, 1.0); }
.h_divider                  { margin:10px 0; display:block; width:60%; }
.h_divider::before          { content:''; height:0; width:100%;
                              display:block; border-top:1px solid rgba(150,160,170, 1.0); }


/* Appearance */
.hidden:not(.active)   { display:none; }
.overflowed            { overflow:visible; }

.op_0     { opacity:0.0; }
.op_10    { opacity:0.1; }
.op_30    { opacity:0.3; }
.op_50    { opacity:0.5; }
.op_60    { opacity:0.6; }
.op_70    { opacity:0.7; }
.op_80    { opacity:0.8; }
.op_100   { opacity:1.0; }

.gray_bg                { background-color:rgba(180,180,180, 1.0); }
.white_bg               { background-color:rgba(255,255,255, 1.0); }
.white_bg_50            { background-color:rgba(255,255,255, 0.5); }
.noBackground           { background-color:transparent; }
.ellipsis               { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.text_pre               { white-space:pre; }
.box_shadow_red:hover   { border-color:rgba(255,150,150, 0.8); box-shadow:0 0 0 3px rgba(255,150,150, 0.3); }
.box_shadow_blue:hover  { border-color:rgba(150,200,255, 0.8); box-shadow:0 0 0 3px rgba(150,200,255, 0.3); }
.emphasis_blue          { border-color:rgba( 30,100,255, 0.4) !important; box-shadow:0 0 0 3px rgba(150,200,255, 0.3) !important; }

ol.indent5 li,
ul.indent5 li       { padding-left:5px; }

.valign_top         { padding-top:11px !important; vertical-align:top !important; }


/* Form */
.form-control                         { font-size:12px; }
.form-group                           { margin-bottom:15px; }
input[type=text],
input[type=number],
input[type=date],
input[type=datetime],
input[type=datetime-local],
input[type=time],
input[type=file],
.input-group input+ button,
select                                { height:28px; padding-top:3px !important; padding-bottom:5px !important; font-size:12px; }
input[type=date],
input[type=file]                      { cursor:pointer; }
.custom-file-label::after             { content:attr(data-button-text); }
.custom-control                       { min-height:0; }
.custom-control-label                 { padding-top:0; line-height:1rem; }
.custom-control-label::before,
.custom-control-label::after          { top:0px; }
.custom-control .custom-control-input             { left:7px; cursor:pointer; }
.modal          .custom-control-input,
.custom-control .custom-control-input[type=radio] { left:0; }

textarea.red_border                   { color:rgba(0,0,0, 1.0); }


/* Button */
      .editable                               { display:none; }
button                                        { transition:all 0.3s; }
button.editable                               { display:initial; width:0 !important; min-width:0 !important; margin:0 !important; padding:0 !important;
                                                border:none; overflow:hidden; white-space:nowrap; }
.btn-sm:not(.btn-icon-square-sm)              { padding:3px 1.2em 5px; }
.btn.btn_xs:not(.btn-icon-square-sm)          { min-width:50px; }
.btn-sm                                       { font-size:12px; padding-left:14px; padding-right:14px; }
.btn-sm.disabled                              { background-color:rgba(255,255,255, 1.0); }
.btn-xs:not(.btn-icon-square-xs)              { padding:1px 10px 3px; }
.btn_xs                                       { font-size:0.9em; padding:1px 1.1em 3px; }
.btn_xxs                                      { font-size:10px; padding:1px 1.0em 2px; }
.btn.disabled                                 { cursor:not-allowed; }
/* button:not(.btn-icon-square-sm):not(.btn-icon-square-sm):not([data-bs-dismiss="modal"])  { min-width:60px; } */
a>  i,
button:not(.btn-icon-square-sm)>  i           { margin-right:5px; }
button:not(.btn-icon-square-sm)>  i.right_end { margin-right:0; margin-left:5px; }
button.close       i                          { color:rgba(255,255,255, 1.0); }

input[type=file]+ button  { font-size:12px; }
.btn_tag                                      { margin-bottom:3px; padding:2px 10px; font-size:11px; }
.btn_tag           i.fa-times:hover           { color:rgba(255,100,100, 1.0); }
.btn_tag.btn_tag_sm                           { margin-bottom:0px; padding:0px 6px; }
.btn_shrink                                   { width:30px; height:30px; font-size:16px; color:rgba(255,255,255, 0.7); cursor:pointer; }
.btn_shrink:hover                             { color:rgba(255,255,255, 1.0); }
.btn_shrink:hover  i.fa-arrow-down::before    { content:'\f103'; }
.btn_shrink:hover  i.fa-arrow-up::before      { content:'\f102'; }
.custom-file-label.with_small_delete          { right:40px; }
.btn.excel_color                              { border-color:rgba( 20,170, 20, 1.0); color:rgba( 20,170, 20, 1.0); }
.btn.excel_color:hover                        { border-color:rgba(  0,120,  0, 1.0); color:rgba(255,255,255, 1.0); background-color:rgba( 20,170, 20, 1.0); }
.custom-file-label.excel_color                { border-color:rgba( 20,170, 20, 1.0); }
.custom-file-label.excel_color::after         { border-left-color:rgba( 20,170, 20, 0.3); background-color:rgba( 20,170, 20, 0.1);}


/* Red Radio */
label { cursor:pointer; }
.custom-radio.red .custom-control-input ~         .custom-control-label::before { border-color:rgba(245, 50, 90, 0.5); }
.custom-radio.red .custom-control-input:active ~  .custom-control-label::before { border-color:rgba(245, 50, 90, 1.0); background-color:rgba(245, 50, 90, 0.1); }
.custom-radio.red .custom-control-input:checked ~ .custom-control-label::before { border-color:rgba(245, 50, 90, 1.0); background-color:rgba(245, 50, 90, 1.0);
                                                                                  color:rgba(255,255,255, 1.0); }
.custom-radio.red .custom-control-input:focus ~   .custom-control-label::before { box-shadow: 0 0 0 3px rgba(245, 50, 90, 0.2); }


.small_select                       { height:25px; padding:0 1rem; border-color:rgba(  0,120,255, 1.0);
                                      background-color:rgba(255,255,255, 1.0) !important; color:rgba(  0,120,255, 1.0) !important; }
.small_select.narrow_padding        { padding:0 5px; }
.btn_xxs                            { font-size:0.9em; padding:0px 10px; }
.btn_xxxs                           { font-size:10px; padding:0px 10px; }
.btn_low                            { padding:0px 10px; }

.btn-icon-square-sm,
.btn-icon-circle-sm                 { width:28px; height:28px; min-width:28px !important; }
.btn-icon-circle-sm                 { padding:0 !important; }
.btn-icon-circle-sm.start_icon      { padding-left:3px !important; }
.btn-icon-circle-sm>i               { margin:0 !important; }

.table_utils  .btn-icon-square-sm,
.table_utils  .btn-icon-circle-sm   { width:24px; height:24px; min-width:24px !important; }

/* Button, Checkbox Color */
    .checkbox.checkbox-single       { margin:auto; }
    .single_line  .checkbox> label,
    .single_line.checkbox>   label  { height:17px; margin-bottom:0; padding-left:8px; }
  td.single_line  .checkbox,
td  .single_line.checkbox           { padding:5px 0 4px; }
    .single_line  .radio>    label  { margin-bottom:0; }
tr:hover  .btn-primary:not(        .disabled):not(label):not(.label):not([data-bs-target]):not([onclick]),
tr:hover  .btn-outline-primary:not(.disabled):not(label):not(.label):not([data-bs-target]):not([onclick])  { border-color:rgba(  0, 70,225, 1.0); background-color:rgba( 30,100,255, 1.0); color:rgba(255,255,255, 1.0); }
tr:hover  .btn-danger:not(         .disabled):not(label):not(.label):not([data-bs-target]):not([onclick]),
tr:hover  .btn-outline-danger:not( .disabled):not(label):not(.label):not([data-bs-target]):not([onclick])  { border-color:rgba(245, 50, 90, 1.0); background-color:rgba(255,100,100, 1.0); color:rgba(255,255,255, 1.0); }

td>  .checkbox:not(.checkbox-single):first-child  label  { margin-top:5px; }
td>  .checkbox:not(.checkbox-single):last-child   label  { margin-bottom:3px; }

input.no_selector::file-selector-button { display: none; }

input[disabled]                     { cursor:not-allowed !important; }
.checkbox input[type="checkbox"]:disabled+ label::before { border-color:rgba(245, 50, 90, 0.5); background-color:rgba(230,230,230, 1.0) !important; background-color: #f1f5fa; cursor: not-allowed; }

/* Switch */
.switch_wrapper                { display:flex; align-items:center; }
.form-switch .form-check-input { width:2.5em; height:1.4em; margin-right:5px; cursor:pointer; }
.pre_label                     { margin-right:7px; font-size:13px; }

/* Label */
.label                { padding:1px 1.2em 3px; border-radius:30px; transition:all 0.3s; font-size:12px; }
.label_start          { padding:1px  0px 3px 10px; }
.label_mid            { padding:1px  5px 3px 5px; }
.label_end            { padding:1px 10px 3px 3px; }
.label_rail,
.label_start          { border-top-left-radius:15px;  border-bottom-left-radius:15px; font-weight:400 !important;
                        border-top-right-radius:0;    border-bottom-right-radius:0; }
.label_mid            { border-radius:0; }
.label_end            { border-top-left-radius:0;     border-bottom-left-radius:0; font-weight:400 !important;
                        border-top-right-radius:15px; border-bottom-right-radius:15px; }
.label_start,
.label_mid,
.label_end            { border:none !important; }

.label_rail           { margin-right:-16px; background-color:rgba( 30,100,255, 0.1); }
.label_num            { height:1.1em; margin-left:5px; padding:0 3px;
                        display:inline-block; border-radius:3px; line-height:1em; background-color:rgba(255,255,255, 1.0); }
.label.square         { border-radius:2px; }

.ball   { width:1em; height:1em; display:inline-block; border-radius:100%;
          border:1px solid rgba( 50, 60,100, 0.6); background-color:rgba(255,255,255, 1.0); }

/* Tippy Bubble */
.tippy-content                      { padding-bottom:2px; font-size:12px; }
.pending-theme                      { background-color:rgba(250, 40, 60, 1.0); color:rgba(255,255,255, 1.0); }
/* .rowGroup_tippy .tippy-popper       { left:100px !important; } */
.tippy-popper[x-placement^=top]  .pending-theme .tippy-arrow { border-top-color:rgba(250, 40, 60, 1.0) !important; }
.tippy-popper[x-placement^=left] .pending-theme .tippy-arrow { border-left-color:rgba(250, 40, 60, 1.0) !important; }
.tippy_area                         { width:30px; height:35px; margin-left:-30px; }
.tippy-arrow                        { left:0 !important; }
/* .tippy-popper  { height:0px; } */

/* Rating */
.br-wrapper           { height:34px; display:flex; justify-content:center; }

select.rating_pass    { display:none; }
div.rating_pass       { display:flex;  }
a.rating_pass         { display:flex; width:80px; height:30px; margin:2px;
                        align-items:center; justify-content:center; border-radius:3px;
                        border:2px solid #5766da54; color:#5766da54; }
a.rating_pass.active,
a.rating_pass:hover   { border:2px solid rgba( 90,100,220, 1.0); color:rgba( 90,100,220, 1.0); font-weight:500; }
              a.rating_pass.small_pass,
.small_pass   a.rating_pass { width:50px; height:24px; margin:0 2px; }
a.br-selected,
a.br-active,
a.rating_pass.active                  { background-color:rgba( 80,100,220, 0.2) !important; }
a.rating_pass.active[data-value="0"]  { border:2px solid rgba(245, 50, 90, 1.0) !important;
                                        background-color:rgba(255, 70,100, 0.1) !important; color:rgba(245, 50, 90, 1.0) !important; }


.br-theme-bars-square .br-widget a.br-active,
.br-theme-bars-square .br-widget a.br-selected {
  border:2px solid rgba( 90,100,220, 0.5); color:rgba( 90,100,220, 0.3);
}
.br-theme-bars-square .br-widget a.br-active.br-current,
.br-theme-bars-square .br-widget a.br-selected.br-current {
  border:2px solid rgba( 90,100,220, 1.0); color:rgba( 90,100,220, 1.0);
}

/* Progress */
.progress        { height:14px; line-height:14px; background-color:rgba( 50, 60,100, 0.2); }
.progress.thin   { height:10px; line-height:10px; }


/* GNB */
              .navbar-custom .topbar-nav li .topbar-icon { font-size:20px; }
.enlarge-menu .navbar-custom .topbar-nav li .topbar-icon::before { content:'\f101'; }

/* GNB - Auth Menu */
#gnb_menu                       { height:calc(100% + 1px); margin-bottom:0; }
#gnb_menu  li                   { border-bottom:4px solid rgba( 30,100,255, 0.0);
                                  padding:4px 30px 0 29px; font-size:15px; font-weight:500; position:relative;
                                  display:flex; align-items:center; align-self:stretch; cursor:pointer; }
#gnb_menu  li:hover             { border-color:rgba( 30,100,255, 0.8); color:rgba( 30,100,255, 1.0); }
#gnb_menu  li:hover   a,
#gnb_menu  li         a:hover   { color:rgba( 30,100,255, 1.0); }
#gnb_menu  li:not(:first-of-type)::before { content:''; display:inline-block; height:0.8em;
                                            position:absolute; left:0; top:calc(50% - 4px);
                                            border-left:1px solid rgba(0,0,0, 0.5); }
li.nav-item.active[data-menu-cnt="0"]::before,
li.mm-active.active::before               { content:''; width:5px; height:27px; display:inline-block;
                                            position:absolute; left:0; background-color:rgba( 30,100,255, 0.3); }
li.nav-item[data-menu-cnt="0"]::before    { height:calc(33px * 1 - 3px); }
li.mm-active[data-menu-cnt="1"]::before   { height:calc(33px * 2 - 3px); }
li.mm-active[data-menu-cnt="2"]::before   { height:calc(33px * 3 - 3px); }
li.mm-active[data-menu-cnt="3"]::before   { height:calc(33px * 4 - 3px); }
li.mm-active[data-menu-cnt="4"]::before   { height:calc(33px * 5 - 3px); }
li.mm-active[data-menu-cnt="5"]::before   { height:calc(33px * 6 - 3px); }
li.mm-active[data-menu-cnt="6"]::before   { height:calc(33px * 7 - 3px); }
li.mm-active[data-menu-cnt="11"]::before  { height:calc(33px * 12 - 3px); }
li.nav-item                               { position:relative; }
li.nav-item.active[data-menu-cnt="0"]::before,
li.nav-item.active::before,
li.nav-item.active::after                         { content:''; width:5px; height:27px; display:inline-block;
                                                    position:absolute; left:-36px; background-color:rgba( 30,100,255, 1.0); }
li.nav-item.active::after                         { width:199px; left:-36px; top:0; background-color:rgba( 30,100,255, 0.1); }
li.nav-item.active[data-menu-cnt="0"]::before     { height:27px; left:-16px; }
li.nav-item.active[data-menu-cnt="0"]::after      { width:199px; height:27px; left:-16px; }
li.nav-item.active.h30[data-menu-cnt="0"]::before,
li.nav-item.active.h30[data-menu-cnt="0"]::after  { height:30px; }
li.nav-item.disabled                      { cursor:not-allowed; }
.left-sidenav-menu  li  ul                { padding-left:20px; }
.left-sidenav-menu  li  ul li>  a         { font-size:12px; }
.left-sidenav-menu  a.nav-link.active,
.left-sidenav-menu  a.nav-link.active>  i { color:rgba( 30,100,255, 1.0) !important; }
.left-sidenav-menu  li> a i               { width:20px; }

/* Toast */
.toast_full_top                           { padding:5px !important; position:absolute; left:0; right:0; top:60px; z-index:5; }
.toast_full_top   .toast                  { max-width:100%; box-shadow:0 2px 2px rgb(0,0,0, 0.05); }
#msg_alert        .toast-header           { padding:15px 20px; border:1px solid rgba(245, 50, 90, 0.4); border-left-width:5px;
                                            background-color:rgba(255,245,255, 1.0); }
#msg_alert:hover  .toast-header           { border-left-color:rgba(245, 50, 90, 1.0); }
                  .toast-header .title    {  }
                  .toast-header .comment  { font-size:12px; }

/* Modal */
.modal-header                 { padding:1em 1.5em; }
.modal-backdrop               { background-color:rgba(0,0,0, 0.5); backdrop-filter:blur(1px); }
.modal[data-backdrop=false]   { background-color:rgba(0,0,0, 0.5); }
               .modal-body    .row  i             { margin-right:5px; font-size:45px; }
.modal-content                                    { border:5px solid rgba(0,0,0, 0.2); border-radius:10px; }
.modal-content .modal-title                       { margin:5px 0 6px; display:inline-block;
                                                    font-size:16px; font-weight:500; letter-spacing:0px; color:rgba( 50, 60,100, 1.0); }
.modal-content .modal-title.single                { margin-top:20px; }
.modal-content .modal-title   .input_box          { padding:10px 20px 0 0; }  /* .input_box: 상태 변경 Radio group */
.modal-content .modal-title   .input_box,
.modal-content .modal-title   .input_box  input,
.modal-content .modal-title   .input_box  label   { margin-bottom:0; font-weight:500; }
.modal-content .modal-title   .input_box  .unit   { margin-left:10px; }
.modal-content .modal-body                        { padding:20px 10px; }
.modal-content .modal-body    i.symbol::before    { margin-top:-20px; font-size:70px; }
.modal-content .modal-body    i.symbol.far::before,
.modal-content .modal-body    i.symbol.fas::before{ font-size:60px; }
.modal-content .modal-body    i.fa-unlock-alt.symbol::before  { font-size:50px; }
.modal-content .modal-body    i.symbol.fa-cart-arrow-down::before  { margin-right:10px; font-size:40px; }
.modal-content .modal-body    h5>div              { margin-top:5px; }
#modal_404     .modal-body    i.symbol::before    { margin-top:0; font-size:100px; line-height:1; }
.modal-content .modal-footer                      { justify-content:center; background-color:rgba(200,210,220, 0.5); }
.modal-content .modal-footer  button              { margin-top:0; margin-bottom:0; }
.input_box     label          { margin-bottom:0; }
.input_box     .unit          { margin-left:10px; }
.input_box     .label,
.input_box     .divider,
.input_box     .unit          { margin-bottom:0 !important; }

.modal.draggable                            { /* pointer-events:none; */ overflow:hidden; }
.modal-open                                 { padding-right:0 !important; }
.ui-draggable          .modal-content       { transition:box-shadow 0.3s; }
.ui-draggable          .modal-content       { box-shadow:0 0 0 5px rgba( 20,100,255, 0.2); }
.ui-draggable-dragging .modal-content       { box-shadow:0 0 0 10px rgba( 20,100,255, 0.2), 0 0 0 5px rgba( 20,100,255, 0.2); }

.modal                                      { transition:background-color 0.3s; }
.modal-content:hover  .bg-soft-secondary,
.modal-content:hover  .modal-body p         { color:rgba( 50, 60,100, 1.0) !important; }
                      .modal-body p:last-child { margin-bottom:0; }

#modal_spinner        .spinner-border       { font-size:1.2rem; width:2rem; height:2rem; }
.spinner_comment                            { display:block; font-size:14px; font-weight:400; color:rgba(255,255,255, 1.0); }

body.index            .modal-content        { width:506px; padding:74px 65px 45px; background-color:rgba(240,240,240, 1.0); }
#modal_404            .modal-content        { width:600px; padding:0; border:none; background-color:rgba(240,240,240, 1.0); }
#modal_404.modal                            { background-color:rgba(240,240,240, 1.0); }
#modal_404.modal      .icon_404::after      { content:''; width:0px; height:50px; border-left:1px solid rgba(0,0,0, 0.1);
                                              position:absolute; right:20px; }

/* Search */
.table_utils                          { height:27px; margin-bottom:10px; position:relative; font-size:13px;
                                        display:flex; align-items:center; }
.table_utils            label         { margin-bottom:0; }
.table_utils  .section  label         { margin-bottom:6px; }
table+  .table_utils                  { margin-top:30px; }
.utils_l,
.utils_r,
.result_unit                          { display:flex; align-items:center; }
.search_form,
.search_info,
.result_unit                          { display:flex; white-space:nowrap; }
.search_form,
.result_unit                          { min-height:27px; margin-left:20px; }
.dataTables_filter      label,
.filter_label                         { display:flex; align-items:center; margin-bottom:0; }
.filter_label                         { margin-right:10px; }
.dataTables_filter      input         { width:300px !important; margin-left:5px !important; }
.dataTables_filter      button        { margin-left:5px; }
.collection.popup  .dataTables_filter input { width:245px !important; }
.check_filter                         { padding:0 20px; }
.check_filter:first-of-type           { padding-left:0; }
.check_filter:not(:first-child)       { border-left:1px solid rgba(0,0,0, 0.5); }
.check_filter  .filter                { margin-left:15px; }
.check_filter  .filter:first-of-type  { margin-left:0; }
.search_detail                        { display:flex; width:calc(100% + 40px); padding:10px 20px 20px;
                                        position:absolute; left:-20px; top:36px; z-index:100;
                                        background-color:rgba(255,255,255, 0.9); box-shadow:0 5px 5px rgba(  0,  0,  0, 0.3); }
.search_detail  .section              { padding:0 20px; }
.search_detail  .section:not(:first-child)  { border-left:1px solid rgba(50, 60,100, 0.5); }
.search_detail  .section_title        { margin-left:-3px; padding-bottom:8px; font-size:15px; font-weight:500; }

/* Table */
.table_box                      { border:2px solid rgba(200,210,220, 0.5); transition:all 0.3s; }
.table_title                    { font-size:14px; font-weight:500; }
.table_title::before            { content:"• "; }
            table               { table-layout:auto; margin:0 !important;
                                  border-collapse:separate !important; border-spacing:0;
                                  border-top:1px solid rgba(170,200,210, 1.0) !important;
                                  border-bottom:1px solid rgba(210,220,230, 1.0) !important; }
            table.fixed,
.half_size  table                       { table-layout:fixed; }
            table:not(.checkTable):not(.noPadding)>  tbody  th:not(.text-center),
            table:not(.checkTable):not(.noPadding)>  *>  *>  *:not(.text-center):first-child   { padding-left:20px; }
            table:not(.checkTable)>  tbody  th~ th                             { padding-left:0.3rem !important; }   /* bootstrap default  */
#calendar   table:not(.checkTable)>  *>  *>  *:first-child                     { padding-left:0; }
            table>  *>  *>  *:not(.not_omitted):not(.overflowed) { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#calendar   table>  *>  *>  *           { overflow:visible; }
       table.wrap>  *>  *>  *           { white-space:normal; }
     table.policy                       { margin:20px 30px 20px 20px !important; border-right:1px solid rgba(210,220,230, 1.0); }
     table.policy>  *>  *>  *           { padding:10px 20px; border:1px solid rgba(210,220,230, 1.0); border-width:0 0 1px 1px; vertical-align:top; }


table.thick                             { border:1px solid rgba(170,200,210, 1.0); }
table           thead                   { background-color:rgba(210,220,230, 0.2); }
table.thick     thead                   { background-color:rgba(210,220,230, 0.6); }
table           thead th                { border-bottom:1px solid rgba(210,220,230, 0.5); }

table.table> *> *> *                    { border-width:1px 0 0 0; }
table.table           th                { color:inherit; }

table.infoTable       th,
table.infoTable       td                { font-size:13px; }
table.infoTable       td                { color:rgba(0,0,0, 1.0); }
table.infoTable                         { border:1px solid rgba(200,210,220, 1.0); border-radius:5px; table-layout:fixed; }
table.infoTable   tr.border_top  th,
table.infoTable   tr.border_top  td,
table.infoTable       th.border_top,
table.infoTable       td.border_top     { border-top:0 !important; }
table.infoTable:not(.noShadow)          { box-shadow:0 0 0 3px rgba(210,220,230, 0.3); }
table.infoTable>  *>  *>  th            { padding-right:15px; min-width:120px; text-align:right; color:rgba( 50, 60,100, 0.7);
                                          border:none; background-color:rgba(210,220,230, 0.2); }
table.infoTable>  *>  *>  td            { border:none; }
table.infoTable>  *>  *>  th.border_left,
table.infoTable>  *>  *>  td.border_left  { border-left:1px solid rgba(210,220,230, 0.5); }
table.infoTable>  *>  *:not(:first-child)>  th  { background-image:linear-gradient(90deg, transparent 15px, rgba(210,220,230, 0.6) 15px );
                                                  background-size:100% 1px; background-position:0px 0px; background-repeat:no-repeat; }
table.infoTable>  *>  *:not(:first-child)>  td  { background-image:linear-gradient(270deg, transparent 15px, rgba(235,240,250, 1.0) 15px );
                                                  background-size:100% 1px; background-position:0px 0px; background-repeat:no-repeat; }
table.infoTable>  *>  tr.border_top:not(:first-child)>  th,
table.infoTable>  *>  *:not(:first-child)>  th.border_top  { background-image:linear-gradient(90deg, transparent 15px, rgba(200,210,220, 1.0) 15px ); }
table.infoTable>  *>  tr.border_top:not(:first-child)>  td,
table.infoTable>  *>  *:not(:first-child)>  td.border_top  { background-image:linear-gradient(270deg, transparent 15px, rgba(210,220,230, 1.0) 15px ); }

table.infoTable   tr.border_top_solid th,
table.infoTable   th.border_top_solid   { border-top:1px solid rgba(200,210,220, 1.0) !important; background-image:none; }
table.infoTable   tr.border_top_solid td,
table.infoTable   td.border_top_solid   { border-top:1px solid rgba(210,220,230, 1.0) !important; background-image:none; }

table.infoTable>  *>  *>  *             { padding-left:10px; }
table.infoTable>  *>  *:first-of-type>* { border-top:0; }
table.infoTable.onHover:hover           { box-shadow:0 0 0 1px rgba(  0,120,255, 0.5), 0 0 0 4px rgba(  0,120,255, 0.2); }
table.infoTable>  *>  *.blank_row>  *   { height:5px; padding:0; font-size:0; line-height:0;
                                          border-top:1px solid rgba(210,220,230, 1.0); border-left:none; border-right:none; }
table.infoTable>  *>  *.blank_row+tr> * { border-top:1px solid rgba(210,220,230, 1.0); }
table.infoTable>  *>  *:first-child>  * { padding-top:15px; }
table.infoTable>  *>  *:last-child>   * { padding-bottom:15px; }
table.infoTable>  *>  *>  th+ td        { padding-left:20px; padding-right:20px; }
table.infoTable>  *>  .last_row>   *    { padding-top:0; padding-bottom:10px; border:none; background-image:none !important; }
table.infoTable+  .infoTable            { margin-top:2px !important; }
.flexTop>  table.infoTable+  .infoTable { margin-top:0 !important; margin-left:5px !important; }
           table.infoTable>  *>  *>  *>  input:not(.noLimit),
           table.infoTable>  *>  *>  *>  textarea:not(.noLimit)  { width:60%; }
.half_size table.infoTable>  *>  *>  *>  input:not(.noLimit),
.half_size table.infoTable>  *>  *>  *>  textarea:not(.noLimit)  { width:100%; }

table.userTable,
table.userTable   th,
table.userTable   td                    { border:none !important; }
table.userTable   td                    { font-weight:500; }
table.userTable   th                    { padding-right:10px; text-align:right; }

table.smallTable                        { padding-top:2px; padding-bottom:1px; }
table.smallTable  th,
table.smallTable  td                    { padding-top:4px; padding-bottom:4px; border-color:rgba(220,230,240, 1.0); }
table.smallTable  thead                 { background-color:rgba(210,220,230, 0.4); }
table.smallTable  tbody  th,
table.smallTable  tbody  td             { background-color:rgba(255,255,255, 0.7); }
table.smallTable         th.border_left,
table.smallTable         td.border_left { border-left:1px solid rgba(210,220,230, 0.5); }
table.smallTable  tbody  th             { background-color:rgba(210,220,230, 0.2); }

table.outlined          { border:1px solid rgba(210,220,230, 1.0) !important; }
table.outlined_thick    { border:2px solid rgba(170,200,210, 1.0) !important; }


table   tbody>           *> *           { transition:background-color 0.3s; }
table   tbody.align_top> *> *,
table   tbody>  .align_top> *,
table   tbody>           *> *.align_top { vertical-align:top; }
table   thead              th.text-end,
table   tbody              td.text-end  { padding-right:22px; }

             span.required::before,
table>  *>  *>  *.required::before      { content:'\F4CE'; margin-right:5px; display:inline-block;
                                          font-family:'Material Design Icons'; font-weight:400; font-size:0.8em;
                                          color:rgba(245, 50, 90, 1.0); vertical-align:text-top; }

table.authTable   input[readonly]       { cursor:not-allowed; }

/* Table Sorting Icon */
table.dataTable thead .sorting::after,
table.dataTable thead .sorting_asc::after,
table.dataTable thead .sorting_desc::after,
table.dataTable thead .sorting_asc_disabled::after,
table.dataTable thead .sorting_desc_disabled::after         { font-family:'Font Awesome 5 Free'; font-weight:900;
                                                              margin-left:5px; position:initial; display:inline-block; }
table.dataTable thead .sorting::after                       { content:"\f161"; }
table.dataTable thead .sorting.sorting_desc::after,
table.dataTable thead .sorting.sorting_desc_disabled::after { content:"\f160"; }

table.dataTable thead .sorting::after,
table.dataTable thead .sorting_asc_disabled::after,
table.dataTable thead .sorting_desc_disabled::after   { opacity:0.3; }
table.dataTable thead .sorting_asc::after,
table.dataTable thead .sorting_desc::after            { opacity:1; }


table.dataTable thead .sorting::before,
table.dataTable thead .sorting_asc::before,
table.dataTable thead .sorting_desc::before,
table.dataTable thead .sorting_asc_disabled::before,
table.dataTable thead .sorting_desc_disabled::before  { content:""; }

table.dataTable thead th.sorting,
table.dataTable thead td.sorting,
table.dataTable thead th.sorting_desc,
table.dataTable thead td.sorting_desc { padding-right:5px !important; }

/* Paging */
.server_side                        { margin-top:18px; }
ul.pagination                       { justify-content:center !important; }
ul.pagination>.buttons              { position:absolute; right:40px; }
ul.pagination>.buttons>a+a          { margin-left:10px; }

.half_size           .dataTables_paginate { display:none; }
.half_size   .modal  .dataTables_paginate { display:block; }

/* Download Button */
.table_utils> .export_buttons       { margin-left:auto; }

/**
 * rowGroup
 */
tr.rowGroup                 td                                { padding-top:3px; padding-bottom:3px; color:rgba(0,0,0, 0.9);
                                                                border-top:2px solid rgba(210,220,230, 1.0) !important; }
tr.rowGroup.folded~ tr.rowGroup td                            { border-top-width:1px !important; }
tr.rowGroup.active                                            { background-color:rgba( 20,130,255, 0.2) !important; }
tr.rowGroup.active          td                                { color:rgba(0,0,0, 1.0); }
tr.rowGroup                 td:first-of-type                  { overflow:visible; }
tr.rowGroup   .group-folder                                   { width:18px; height:15px; margin-left:3px; cursor:pointer; display:inline-block; vertical-align:middle;
                                                                font-family:'Font Awesome 5 Free'; font-size:14px; font-weight:900; line-height:15px; text-align:center; }
tr.rowGroup.nonGroup .group-folder                            { margin-right:5px; }
tr.rowGroup   .group-folder~.subInfo                          { margin-left:10px; }
tr.rowGroup   .group-folder~i,
tr.group-sub                th      i,
tr.group-sub-end            th      i                         { margin-left:0 !important; }
tr.rowGroup   .group-folder:hover                             { color:rgba(250, 40, 60, 1.0); }
tr.rowGroup   .group-folder.folded::before                    { content:'\f0d7'; }
tr.rowGroup   .group-folder.unfolded::before                  { content:'\f0d8'; }
tr.rowGroup~  .group-sub                td:first-of-type,
tr.option-mid                           td:first-of-type      { background-image:url("../../images/common/rowGroup_line_mid.png"); background-repeat:no-repeat; }
tr.rowGroup~  .group-sub-end            td:first-of-type,
tr.option-end                           td:first-of-type      { background-image:url("../../images/common/rowGroup_line_end.png"); background-repeat:no-repeat; }
tr.rowGroup.dtrg-start                                        { cursor:n-resize !important; }
tr.rowGroup.dtrg-start                  .subInfo              { font-weight:350; }
tr.rowGroup:not(.folded)                td:first-of-type      { background-image:url("../../images/common/rowGroup_line_folder.png"); background-repeat:no-repeat; }
tr.rowGroup                             td                    { overflow:visible !important; }

.rowGroup   tbody   tr                       td:first-of-type { border-left: 2px solid transparent; }
.rowGroup   tbody   tr                       td:last-of-type  { border-right:2px solid transparent; }
.rowGroup   tbody   tr.active                td:first-of-type { border-left: 2px solid rgba( 20,100,255, 0.3) !important; }
.rowGroup   tbody   tr.active                td:last-of-type  { border-right:2px solid rgba( 20,100,255, 0.3) !important; }
.rowGroup   tbody   tr.rowGroup.active+  tr.group-sub     td,
.rowGroup   tbody   tr.rowGroup.active+  tr.group-sub-end td  { border-top-color:rgba( 20,100,255, 0.3) !important;}
.rowGroup   tbody   tr.active+  tr.rowGroup  td,
.rowGroup   tbody   tr.rowGroup.active       td,
.rowGroup   tbody   tr.active:first-of-type  td               { border-top-color:rgba( 20,100,255, 0.3) !important; }
.rowGroup   tbody   tr.active:last-of-type   td               { border-bottom:1px solid rgba( 20,100,255, 0.3) !important; }

tr.rowGroup.dtrg-level-0.nonGroup:not(.folded)                      td  { background-position:-4px -2px; }
tr:first-of-type.rowGroup.dtrg-level-0.nonGroup:not(.folded)        td  { background-position:-4px  0px; }   /* 첫줄의 BG 위치 교정 */
tr.rowGroup.dtrg-level-1.nonGroup:not(.folded)                      td  { background-position:24px -2px; }
tr.rowGroup.dtrg-level-2.nonGroup:not(.folded)                      td  { background-position:44px -2px; }
tr.rowGroup.dtrg-level-3.nonGroup:not(.folded)                      td  { background-position:64px -2px; }

tr.rowGroup.dtrg-level-0:not(.nonGroup):not(.folded)                td  { background-position:17px -2px; }
tr:first-of-type.rowGroup.dtrg-level-0:not(.nonGroup):not(.folded)  td  { background-position:17px  0px; }   /* 첫줄의 BG 위치 교정 */
tr.rowGroup.dtrg-level-1:not(.nonGroup):not(.folded)                td  { background-position:40px -2px; }
tr.rowGroup.dtrg-level-2:not(.nonGroup):not(.folded)                td  { background-position:60px -2px; }
tr.rowGroup.dtrg-level-3:not(.nonGroup):not(.folded)                td  { background-position:80px -2px; }
tr.option-mid                                         td:first-of-type  { background-position:10px  0px; }
tr.option-end                                         td:first-of-type  { background-position:10px -15px; }

tr.rowGroup.dtrg-level-0                                            td  { padding-left:20px  !important; }
tr.rowGroup.dtrg-level-1                                            td  { padding-left:20px !important; }
tr.rowGroup.dtrg-level-2                                            td  { padding-left:40px !important; }
tr.rowGroup.dtrg-level-3                                            td  { padding-left:60px !important; }
tr.child                                                            td  { padding-left:45px !important; }   /* child row에 여러 목록이 출력되는 경우 */
tr.option-mid                                         td:first-of-type,
tr.option-end                                         td:first-of-type  { padding-left:35px !important; }

/* Group - padding, BG */
tr:not(.nonGroup).dtrg-level-0~ tr.group-sub                  td:first-of-type  { padding-left:56px !important; background-position:17px -1px; }
tr:not(.nonGroup).dtrg-level-0~ tr.group-sub.addOption        td:first-of-type  { padding-left:21px !important; }
tr:not(.nonGroup).dtrg-level-0~ tr.group-sub-end              td:first-of-type  { padding-left:56px !important; background-position:17px -16px; }
tr:not(.nonGroup).dtrg-level-0~ tr.group-sub-end.addOption    td:first-of-type  { padding-left:21px !important; }
tr:not(.nonGroup).dtrg-level-0~ tr.child>                     td:first-of-type  { padding-left:66px !important; }
tr:not(.nonGroup).dtrg-level-0~ tr.group-sub+ tr.child>       td:first-of-type  { padding-left:66px !important; background-position:25px -1px; background-image:url("../images/ico/rowGroup_line_mid_child.png"); background-repeat:no-repeat; }
tr:not(.nonGroup).dtrg-level-1~ tr.group-sub                  td:first-of-type  { padding-left:66px !important; background-position:40px -1px; }
tr:not(.nonGroup).dtrg-level-1~ tr.group-sub.addOption        td:first-of-type  { padding-left:41px !important; }
tr:not(.nonGroup).dtrg-level-1~ tr.group-sub-end              td:first-of-type  { padding-left:66px !important; background-position:40px -16px; }
tr:not(.nonGroup).dtrg-level-1~ tr.group-sub-end.addOption    td:first-of-type  { padding-left:41px !important; }
tr:not(.nonGroup).dtrg-level-1~ tr.child>                     td:first-of-type  { padding-left:86px !important; }
tr:not(.nonGroup).dtrg-level-1~ tr.group-sub+ tr.child>       td:first-of-type  { padding-left:86px !important; background-position:45px -1px; background-image:url("../images/ico/rowGroup_line_mid_child.png"); background-repeat:no-repeat; }
tr:not(.nonGroup).dtrg-level-2~ tr.group-sub                  td:first-of-type  { padding-left:86px !important; background-position:60px -1px; }
tr:not(.nonGroup).dtrg-level-2~ tr.group-sub.addOption        td:first-of-type  { padding-left:61px !important; }
tr:not(.nonGroup).dtrg-level-2~ tr.group-sub-end              td:first-of-type  { padding-left:86px !important; background-position:60px -16px; }
tr:not(.nonGroup).dtrg-level-2~ tr.group-sub-end.addOption    td:first-of-type  { padding-left:61px !important; }
tr:not(.nonGroup).dtrg-level-3~ tr.group-sub                  td:first-of-type  { padding-left:106px !important;background-position:80px -1px; }
tr:not(.nonGroup).dtrg-level-3~ tr.group-sub.addOption        td:first-of-type  { padding-left:81px !important; }
tr:not(.nonGroup).dtrg-level-3~ tr.group-sub-end              td:first-of-type  { padding-left:106px !important;background-position:80px -16px; }
tr:not(.nonGroup).dtrg-level-3~ tr.group-sub-end.addOption    td:first-of-type  { padding-left:81px !important; }

tr.nonGroup.dtrg-level-0~       tr.nonGroup-sub.group-sub     td  { padding-left:21px !important; background-position:-4px -1px; }
tr.nonGroup.dtrg-level-0~       tr.nonGroup-sub.group-sub-end td  { padding-left:21px !important; background-position:-4px -16px; }
tr.nonGroup.dtrg-level-1~       tr.nonGroup-sub.group-sub     td  { padding-left:41px !important; background-position:24px -1px; }
tr.nonGroup.dtrg-level-1~       tr.nonGroup-sub.group-sub-end td  { padding-left:41px !important; background-position:24px -16px; }
tr.nonGroup.dtrg-level-2~       tr.nonGroup-sub.group-sub     td  { padding-left:61px !important; background-position:44px -1px; }
tr.nonGroup.dtrg-level-2~       tr.nonGroup-sub.group-sub-end td  { padding-left:61px !important; background-position:44px -16px; }
tr.nonGroup.dtrg-level-3~       tr.nonGroup-sub.group-sub     td  { padding-left:81px !important; background-position:64px -1px; }
tr.nonGroup.dtrg-level-3~       tr.nonGroup-sub.group-sub-end td  { padding-left:81px !important; background-position:64px -16px; }

tr.rowGroup.dtrg-start          { border-top-color:rgb(200,200,200); background-color:rgba(0,0,0, 0.03);
                                  color:rgba(0,0,0, 0.8); font-weight:400; }
tr.rowGroup.dtrg-start:hover    { color:rgba(0,0,0, 1.0); }
tr.rowGroup.dtrg-start.active,
tr.rowGroup.dtrg-start:hover    { border-top-color:rgb(190,190,190); background-color:rgba(0,0,0, 0.06); }
tr.rowGroup.dtrg-start   [id^="create_"]:not(.pointer-on-half) { cursor:pointer !important; }

.blind_rowGroup                   tr.rowGroup~.group-sub            th:first-of-type,
.blind_rowGroup                   tr.rowGroup~.group-sub-end        th:first-of-type  { background:none !important; }


/* 진행 상태 */
#datatable  tr.canceled,
#datatable  tr.canceled:hover,
.infoTable                       th.canceled,
.infoTable                       td.canceled     { color:rgba(245, 50, 90, 1.0); font-weight:500; }  /* 결제 */
#datatable  tr.canceled,
#datatable  tr.canceled:hover                     { color:rgba(245, 50, 90, 1.0); }  /* 결제 */
#datatable  tr.to_expire,
#datatable  tr.to_expire:hover                    { color:rgba(245, 50, 90, 1.0); }
#datatable  tr.supplement         td.status       { color:rgba(245, 50, 90, 1.0); }
#datatable  tr.inProgress         td.status       { color:rgba( 30,100,255, 1.0); }
#datatable  tr.approved           td.status       { color:rgba( 30,100,255, 1.0); }  /* 결제 */
#datatable  tr.req_waiting        td              { color:rgba(245, 50, 90, 0.8); }
#datatable  tr.req_waiting:hover  td              { color:rgba(245, 50, 90, 1.0); }
#datatable  tr.req_waiting        td.req_status   { color:rgba(245, 50, 90, 1.0); }
#datatable  tr.req_approved       td.req_status   { color:rgba( 30,100,255, 1.0); }
#datatable  tr.req_holding        td              { color:rgba(  0,  0,  0, 0.3); }
#datatable  tr.req_holding        td.req_status   { color:rgba(  0,  0,  0, 1.0); }
#datatable  tr.req_pending        td              { color:rgba( 50,180, 40, 0.8); }
#datatable  tr.req_pending        td.req_status   { color:rgba( 50,180, 40, 1.0); }

#datatable  tr                    th.title,
#datatable  tr                    td.title,
#datatable  tr                    th.req_type,
#datatable  tr                    td.req_type     { padding-left:20px; }
#datatable  tr                    th.title,
#datatable  tr                    td.title,
#datatable  tr                    th.req_type,
#datatable  tr                    td.req_type     { position:relative; /* overflow:visible; */ }
#datatable:not(.card_type)  tr.saved              td.title:not(.noIcon)::before,
#datatable:not(.card_type)  tr.denied             td.title:not(.noIcon)::before,
#datatable:not(.card_type)  tr.delayed            td.title:not(.noIcon)::before,
#datatable:not(.card_type)  tr.to_expire          td.title:not(.noIcon)::before,
#datatable:not(.card_type)  tr.inProgress         td.title:not(.noIcon)::before,
#datatable:not(.card_type)  tr.supplement         td.title:not(.noIcon)::before,
#datatable:not(.card_type)  tr.closed             td.title:not(.noIcon)::before,
#datatable:not(.card_type)  tr.completed          td.title:not(.noIcon)::before,
#datatable:not(.card_type)  tr.req_register       td.req_type:not(.noIcon)::before,
#datatable:not(.card_type)  tr.req_changing       td.req_type:not(.noIcon)::before  { content:''; /* margin:0 5px 0 -17px; */ position:absolute; left:0.1em; margin-top:1px;
                                                                      font-family:'Font Awesome 5 Free'; font-weight:900; color:rgba(245, 50, 90, 1.0); }
#datatable:not(.card_type)  tr.saved              td.title:not(.noIcon)::before     { content:'\f14b'; color:rgba( 30,100,255, 1.0); }
#datatable:not(.card_type)  tr.denied             td.title:not(.noIcon)::before     { content:'\f05e'; color:rgba(200,  0,  0, 1.0); }
#datatable:not(.card_type)  tr.delayed            td.title:not(.noIcon)::before     { content:'\f071'; color:rgba(245, 50, 90, 1.0); }
#datatable:not(.card_type)  tr.to_expire          td.title:not(.noIcon)::before     { content:'\f274'; color:rgba(245, 50, 90, 1.0); }
#datatable:not(.card_type)  tr.inProgress         td.title:not(.noIcon)::before     { content:'\f0c3'; color:rgba( 30,100,255, 1.0); }
/* #datatable:not(.card_type)  tr.supplement         td.title:not(.noIcon)::before     { content:'\f044'; color:rgba(250, 40, 60, 1.0); } */
#datatable:not(.card_type)  tr.supplement         td.title:not(.noIcon)::before     { content:'\f14b'; color:rgba(245, 50, 90, 1.0); }
#datatable:not(.card_type)  tr.closed             td.title:not(.noIcon)::before     { content:'\f0c3'; color:rgba(245, 50, 90, 1.0); }
#datatable:not(.card_type)  tr.completed          td.title:not(.noIcon)::before     { content:'\f00c'; color:rgba( 30,100,255, 1.0); }
#datatable:not(.card_type)  tr.req_register       td.req_type:not(.noIcon)::before  { content:'\f00c'; color:inherit; }
/* #datatable:not(.card_type)  tr.req_changing       td.req_type:not(.noIcon)::before  { content:'\f044'; color:inherit; } */
#datatable:not(.card_type)  tr.req_changing       td.req_type:not(.noIcon)::before  { content:'\f14b'; color:inherit; }

#datatable  tr.rowGroup.denied        td  i   { color:rgba(250, 40, 60, 1.0); }
#datatable  tr.rowGroup.to_expire     td  i   { color:rgba(250, 40, 60, 1.0); }
#datatable  tr.rowGroup.inProgress    td  i   { color:rgba( 30,100,255, 1.0); }
#datatable  tr.rowGroup.closed        td  i   { color:rgba(250, 40, 60, 1.0); }
#datatable  tr.rowGroup.completed     td  i   { color:rgba( 30,100,255, 1.0); }

table       tr.delayed          td.title_col,
table       tr.delayed          td.status     { color:rgba(250, 40, 60, 1.0) !important; }
.card_type  tr.delayed          td.title_col  { background-color:rgba(250, 40, 60, 0.05) !important; }
.card_type  tr.delayed:hover    td.title_col  { background-color:rgba(250, 40, 60, 0.1) !important; }

table         .agree            .result       { color:rgba( 30,100,255, 1.0); font-weight:400; }
table         .disagree         .result       { color:rgba(250, 40, 60, 1.0); font-weight:400; }
table         .timeout          .result,
table         .timeout          td            { color:rgba(250, 40, 60, 1.0); }

.section+ .section                                   { margin-left:10px; }
.section  table:last-child,
.section  table:last-child  tr:last-of-type          { height:100%; }
.section  table:last-child  tr:last-of-type   th,
.section  table:last-child  tr:last-of-type   td     { vertical-align:top; }

label:not(.mBot0):not(.custom-control-label)~ span   { margin-bottom:0.5rem; position:relative; }
label:not(.mBot0):not(.custom-control-label)+ span.data~ span.data::before { content:','; display:inline; margin-right:5px; }


/* Appearance */
tr[onclick],
tr[data-bs-target],
tr[data-target-url],
tr[data-target-frame],
tr[data-user-id]             { cursor:pointer; }
tr[onclick]:hover,
tr[data-bs-target]:hover,
tr[data-target-url]:hover,
tr[data-target-frame]:hover,
tr[data-user-id]:hover       { background-color:rgba(245,250,255, 1.0); }
tr[onclick]:hover            th,
tr[onclick]:hover            td,
tr[data-bs-target]:hover     th,
tr[data-bs-target]:hover     td,
tr[data-target-url]:hover    th,
tr[data-target-url]:hover    td,
tr[data-target-frame]:hover  th,
tr[data-target-frame]:hover  td,
tr[data-user-id]:hover  th,
tr[data-user-id]:hover  td,
tr[onclick]:not(.selected):hover+tr:not(.selected)           th,
tr[onclick]:not(.selected):hover+tr:not(.selected)           td,
tr[data-bs-target]:not(.selected):hover+tr:not(.selected)    th,
tr[data-bs-target]:not(.selected):hover+tr:not(.selected)    td,
tr[data-target-url]:not(.selected):hover+tr:not(.selected)   th,
tr[data-target-url]:not(.selected):hover+tr:not(.selected)   td,
tr[data-target-frame]:not(.selected):hover+tr:not(.selected) th,
tr[data-target-frame]:not(.selected):hover+tr:not(.selected) td,
tr[data-user-id]:not(.selected):hover+tr:not(.selected) th,
tr[data-user-id]:not(.selected):hover+tr:not(.selected) td       { border-color:rgba(210,220,230, 1.0); }
tr[onclick].selected,
tr[data-bs-target].selected,
tr[data-target-url].selected,
tr[data-target-frame].selected,
tr[data-user-id].selected         { background-color:rgba(230,245,255, 1.0); }
tr[onclick].selected              th,
tr[onclick].selected              td,
tr[data-bs-target].selected       th,
tr[data-bs-target].selected       td,
tr[data-target-url].selected      th,
tr[data-target-url].selected      td,
tr[data-target-frame].selected    th,
tr[data-target-frame].selected    td,
tr[data-user-id].selected         th,
tr[data-user-id].selected         td,
tr[onclick].selected+          tr th,
tr[onclick].selected+          tr td,
tr[data-bs-target].selected+   tr th,
tr[data-bs-target].selected+   tr td,
tr[data-target-url].selected+  tr th,
tr[data-target-url].selected+  tr td,
tr[data-target-frame].selected+tr th,
tr[data-target-frame].selected+tr td,
tr[data-user-id].selected+tr th,
tr[data-user-id].selected+tr td        { border-color:rgba(190,210,220, 1.0); }


/**
 * Card Table
 */
              .card-body    { padding:15px 20px 10px; }
.modal-body   .card-body    { padding:5px 20px; }

table.card_type                         { display:block; border:none !important; padding:0 30px; }
table.card_type  thead                  { display:block; }
table.card_type  thead  tr              { display:flex; flex-direction:row; }
table.card_type  thead  tr  th:hover    { background-color:rgba(200,225,240, 0.7) !important; border-color:rgba(200,210,220, 1.0) !important; }
table.card_type  thead  th              { margin:0 2px; padding:5px 30px 5px 20px; border:1px solid rgba(210,220,230, 0.6) !important; }
table.card_type  tbody                  { display:flex; align-content:flex-start; flex-wrap:wrap; }
table.card_type         tr              { display:flex; flex-direction:column; max-width:25%; flex-grow:1; padding:10px; transition:all 0.5s; }
table.card_type         td              { display:block; padding:5px 20px !important; }
table.card_type  tbody  td              { color:rgba( 50, 60,100, 1.0); }
table.card_type         td:not(.action_buttons):not(.dataTables_empty)::before { display:inline-block; content:attr(data-title); opacity:0.7;
                                                          width:65px; margin-right:20px; font-size:12px; text-align:right; color:rgba( 50, 60,100, 1.0); }
table.card_type         td              { border-top:none; order:2; }
table.card_type         td.title_col    { font-weight:400; color:rgba(0,0,0, 1.0); }
table.card_type         td.line_top     { border-top:1px solid rgba(210,220,230, 0.6); }
table.card_type         td.line_bottom  { border-bottom:1px solid rgba(210,220,230, 0.6); padding-bottom:10px !important; }
table.card_type         td.order_start  { border-bottom:1px solid rgba(210,220,230, 1.0); border-top-left-radius:4px; border-top-right-radius:4px;
                                          margin:-10px -10px 0 -10px; padding:9px 30px 10px !important;
                                          background-color:rgba(200,220,255, 0.3); font-size:14px; }
table.card_type         td.order_end    { margin:0 -10px -10px -10px; padding-top:10px !important; padding-bottom:10px !important;
                                          background-color:rgba(210,220,230, 0.3); text-align:right !important; }
table.card_type         td.order_1      { padding-top:10px !important; }
table.card_type         td.line_Vside   { border-top:1px solid rgba(210,220,230, 0.6); border-bottom:1px solid rgba(210,220,230, 0.6); }
table.card_type         td.short_col    { margin:0 10px; padding:5px 10px !important; }
table.card_type         tr              { margin:10px; }
table.card_type  tbody  tr              { border:1px solid rgba( 50, 60,100, 0.3); border-radius:5px;
                                          width: calc(25% - 20px); max-width: calc(25% - 20px);
                                          box-shadow:0 0 0 3px rgba( 50, 60,100, 0.1); }
table.card_type  tbody  tr.zerorecords  { max-width:100%; }
table.card_type  tbody  tr:hover        { border:1px solid rgba( 50, 60,100, 0.5); color:rgba( 20, 30, 70, 1.0); }
table.card_type  tbody  tr:hover  td.line_top     { border-color:rgba(210,220,230, 1.0); }
table.card_type  tbody  tr:hover  td.line_bottom  { border-color:rgba(210,220,230, 1.0); }
table.card_type  .noCard_type           { display:none; }

table.card_type  tbody  tr.IACUC:hover                  { box-shadow:0 0 0 4px rgba( 30,100,255, 0.2); }
table            tbody  tr.IACUC:hover                  { background-color:rgba(240,250,255, 1.0); }
table.card_type  tbody  tr.IACUC:hover                  { background-color:rgba(240,250,255, 0.5); }
table.card_type  tbody  tr.IACUC:hover  td.order_start  { background-color:rgba( 30,100,255, 1.0); }
table.card_type  tbody  tr.IACUC:hover  td.order_end    { background-color:rgba(210,220,230, 0.4); }

table.card_type  tbody  tr.IBC:hover                    { box-shadow:0 0 0 4px rgba(100,200, 80, 0.2); }
table            tbody  tr.IBC:hover                    { background-color:rgba(240,255,250, 1.0); }
table.card_type  tbody  tr.IBC:hover                    { background-color:rgba(240,255,250, 0.5); }
table.card_type  tbody  tr.IBC:hover    td.order_start  { background-color:rgba(100,200, 80, 1.0); }
table.card_type  tbody  tr.IBC:hover    td.order_end    { background-color:rgba(210,230,220, 0.4); }

table.card_type  tbody  tr.IRB:hover                    { box-shadow:0 0 0 4px rgba(250,150, 50, 0.2); }
table            tbody  tr.IRB:hover                    { background-color:rgba(255,250,240, 1.0); }
table.card_type  tbody  tr.IRB:hover                    { background-color:rgba(255,250,240, 0.5); }
table.card_type  tbody  tr.IRB:hover    td.order_start  { background-color:rgba(250,150, 50, 1.0); }
table.card_type  tbody  tr.IRB:hover    td.order_end    { background-color:rgba(230,220,210, 0.4); }
table.card_type  tbody  tr:hover        td.order_start,
table.card_type  tbody  tr:hover        td.order_start::before  { color:rgba(255,255,255, 1.0) !important; }

.order_start  { order:0 !important; }
.order_1      { order:1 !important; }
.order_2      { order:2 !important; }
.order_3      { order:3 !important; }
.order_4      { order:4 !important; }
.order_5      { order:5 !important; }
.order_end    { order:10 !important; }

/* Comment */
        .comment                          { color:rgba( 50, 60,100, 1.0); }
td      .comment                          { color:rgba(100,110,150, 1.0); }
        .comment_box                      { border:1px solid rgba( 50, 60,100, 0.3); border-radius:5px; position:relative;
                                            padding:10px 20px; background-color:rgba( 50, 60,100, 0.1); }
        .comment_box.red_box              { border-color:rgba(255,150,150, 0.5); background-color:rgba(255,150,150, 0.1); }
        .comment_box.blue_box             { border-color:rgba(150,200,255, 1.0); background-color:rgba(150,200,255, 0.1); }
        .comment_box.gray_box             { border-color:rgba(210,220,230, 1.0); background-color:rgba(210,220,230, 0.1); }
        .comment_box.red_box  .color_1    { color:rgba(245, 50, 90, 1.0); }
        .comment_box.red_box  .color_2    { color:rgba(250, 40, 60, 1.0); }
        .comment_box.blue_box .color_1    { color:rgba(  0, 70,225, 1.0); }
        .comment_box.blue_box .color_2    { color:rgba( 50, 60,100, 1.0); }
        .comment_box  .comment_title      { font-size:13px; font-weight:500; }
        .comment_box  .comment            { font-size:12px; font-weight:350; }
        .comment_box       .comment_date  { font-size:12px; font-weight:300; opacity:0.5; }
        .comment_box:hover .comment_date  { opacity:1.0; }
table+  .comment_box                      { margin-top:10px; }
        .comment_box>        .btn_close_comment     { position:absolute; margin:0; padding:5px 10px; right:0; top:0; opacity:0.5; }
        .comment_box>        .btn_close_comment  i  { margin:0; padding:0; }
        .comment_box:hover>  .btn_close_comment     { opacity:1.0; }
        .noComment                        { font-weight:350; color:rgba( 50, 60,100, 0.4); }

td.description            { padding:15px 20px; vertical-align:top; background-color:rgba(210,220,230, 0.2);
                            box-shadow:0 0 0 8px inset rgb(255 255 255); }
td.description::before    { content:attr(data-title); margin:-8px -12px 10px; padding:2px 10px 3px; display:block;
                            font-weight:400; color:rgba(255,255,255, 1.0); background-color:rgba(180,200,220, 1.0);
                            border-top-left-radius:5px; }
.half_size          .comment_box  { display:none; }
.half_size  .modal  .comment_box  { display:block; }
