/* -------------------------------------------------- */
/* Reset - http://purecss.io/base
/* -------------------------------------------------- */
a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video{
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  vertical-align: baseline;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main{
  display: block;
}

body{ line-height: 1; }

ol, ul{ list-style: none; }

blockquote, q{ quotes: none; }

blockquote::before,
blockquote::after,
q::before,
q::after{
  content: "";
  content: none;
}

table{
  border-collapse: collapse;
  border-spacing: 0;
}

.hide{ display: none; }

html{ box-sizing: border-box; }

*, *::before, *::after{ box-sizing: inherit; }

.clear{
  font-size: 0;
  clear: both;
  height: 0;
}

*:focus{ outline: none; }

strong{ font-weight: 700; }

em{ font-style: italic; }

input:invalid{ box-shadow: none; }

/* button/input reset */
button{
  border: none;
  background: none;
  padding: 0;
  margin: 0;
}

button::-moz-focus-inner{ border: 0; }

input, button{
  border-radius: 0;
}

html{ scroll-behavior: smooth; }

/* -------------------------------------------------- */
/* Globals
/* -------------------------------------------------- */

body{
  font-family: "Inter", Arial, sans-serif;
  font-size: 16px;
  color: #121212;
}

h1, h2, h3, h4{
  padding: 9px 0;
  line-height: 1.2em;
  font-weight: 700;
}

h1{ font-size: 24px; }
h2{ font-size: 21px; }
h3{ font-size: 18px; }
h4{ font-size: 15px; }

a, a:visited{ color: #0068b2; }

a:hover, a:active{ text-decoration: none; }

p{
  padding: 9px 0;
  line-height: 1.6em;
}

button:hover{ cursor: pointer; }

/* -------------------------------------------------- */
/* Header
/* -------------------------------------------------- */

.hr-header{
  position: sticky;
  z-index: 666;
  top: 0;
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 0 12px 0 9px;
  height: 78px;
  width: 100%;
  background: #fff;
  border-bottom: 1px solid #e2e2e2;
}

/* Brand */

a.hr-logo{
  display: flex;
  align-items: center;
  text-decoration: none;
  color: #121212;
}

a.hr-logo .hr-logo-i{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 42px;
  height: 42px;
  border-radius: 21px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1em;
  background: #121212;
  color: #fff;
}

a.hr-logo .hr-logo-txt{
  display: inline-block;
  padding-left: 9px;
  font-size: 18px;
  font-weight: 700;
}

a.hr-logo .hr-logo-txt span{
  display: block;
  padding: 4px 0 0 0;
  font-size: 11px;
  font-weight: 400;
  color: #999;
}

/* -------------------------------------------------- */
/* Layout
/* -------------------------------------------------- */

.hr-layout-cols{
  display: flex;
  gap: 24px;
}

.hr-layout-col-fill{ flex-grow: 1; }

.hr-layout-col-1-2{ width: 50%; }
.hr-layout-col-1-4{ width: 25%; }
.hr-layout-col-3-4{ width: 75%; }

/* -------------------------------------------------- */
/* Nav List
/* -------------------------------------------------- */

.hr-cols{
  display: flex;
  width: 100%;
  gap: 6px;
  align-items: center;
}

.hr-col-rt{
  display: flex;
  align-items: center;
  gap: 6px;
  margin-left: auto;
}

/* -------------------------------------------------- */
/* Menus
/* -------------------------------------------------- */

.hr-menu{
  position: relative;
  display: inline-block;
}

.hr-menu-toggle{ cursor: pointer; }

.hr-menu-dd{
  position: absolute;
  margin: 0;
  padding: 6px;
  background: #222e64;
  border-radius: 6px;
  box-shadow: 0 3px 3px rgba(0,0,0,.12);
  display: none;
  z-index: 1000;
  top: 100%;
  left: 0;
  margin-top: 4px;
  overflow: hidden;
  white-space: nowrap;
}

.hr-menu-dd.is-open{ display: block; }

.hr-menu-dd-btm-rt{
  left: auto;
  right: 0;
}

.hr-menu-dd-top-left{
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: 4px;
}

.hr-menu-dd-top-rt{
  top: auto;
  bottom: 100%;
  left: auto;
  right: 0;
  margin-top: 0;
  margin-bottom: 4px;
}

.hr-menu-dd-btm-mid{
  left: 50%;
  right: auto;
  transform: translateX(-50%);
  top: 100%;
  margin-top: 4px;
}

.hr-menu-dd-top-mid{
  bottom: 100%;
  top: auto;
  left: 50%;
  right: auto;
  transform: translateX(-50%);
  margin-bottom: 4px;
}

.hr-menu-dd ul{ display: block; }

.hr-menu-dd li a{
  display: flex;
  align-items: center;
  padding: 6px;
  text-align: left;
  font-size: 14px;
  text-decoration: none;
  color: #fff;
  border-radius: 6px;
  min-height: 32px;
}

.hr-menu-dd li a span{
  display: block;
  padding: 0 6px;
}

.hr-menu-dd li a:hover{
  color: #fff;
  background-color: rgba(255,255,255,.06);
}

/* -------------------------------------------------- */
/* Buttons
/* -------------------------------------------------- */

button{
  font-family: "Inter", Arial, sans-serif;
  color: #0068b2;
}

.hr-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  height: 42px;
  min-width: 42px;
  border-radius: 21px;
  padding: 0 6px;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  color: #0068b2;
  border: 1px solid transparent;
}

.hr-btn img{
  width: 24px;
  height: 24px;
  border-radius: 12px;
}

.hr-btn.hr-btn-outline{ border-color: #0068b2; }

.hr-btn.hr-btn-fill{
  background: #0068b2;
  color: #fff;
}

/* contains an svg/img and text */
.hr-btn:has(> svg:first-child + span:last-child),
.hr-btn:has(> img:first-child + span:last-child){
  gap: 3px;
  padding: 0 18px 0 12px;
}

/* contains just text */
.hr-btn:has(> span:only-child){ padding: 0 18px; }

.hr-btn:hover,
.hr-btn.current{ background-color: rgba(0,104,178,.06); }

.hr-btn.hr-btn-fill:hover{
  background: #0068b2;
  color: #fff;
}

.hr-btn-drag:hover{ cursor: grab; }

.hr-btn-drag:active{ cursor: grabbing; }

.hr-btn-cal{ display: none; }

/* light/dark toggle button */

.hr-btn-dark-toggle{
  background: none;
  border: 0;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  width: 24px;
  height: 24px;
  color: #fff;
  position: absolute;
  bottom: 12px;
  left: 24px;
}

.hr-btn-dark-toggle .icon-moon{ display: none; }
.hr-btn-dark-toggle.is-dark .icon-moon{ display: block; }
.hr-btn-dark-toggle.is-dark .icon-sun{ display: none; }

/* -------------------------------------------------- */
/* Aside
/* -------------------------------------------------- */

.hr-layout-aside-main{
  display: flex;
  min-height: calc(100vh - 78px);
}

.hr-aside{
  position: sticky;
  top: 78px;
  flex: 0 0 240px;
  max-height: calc(100vh - 78px);
  padding: 24px 12px;
  overflow-y: auto;
  background: #222e64;
}

.hr-aside-group h3{
  padding: 12px 0;
  font-size: 12px;
  font-weight: 400;
  text-transform: uppercase;
  color: rgba(255,255,255,.5);
}

.hr-aside-nav ul{ display: block; }

.hr-aside-nav li{ padding: 3px 0; }

.hr-aside-nav li a{
  display: flex;
  align-items: center;
  padding: 6px;
  text-align: left;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  color: #fff;
  border-radius: 6px;
}

.hr-aside-nav li a span{
  display: block;
  padding: 0 6px;
}

.hr-aside-nav li a:hover,
.hr-aside-nav li.current a{
  background-color: rgba(255,255,255,.06);
}

.hr-aside-toggle{
  position: absolute;
  z-index: 100;
  top: 0;
  right: 0;
  bottom: 0;
  width: 12px;
  border-right: 3px solid transparent;
  transition: border-color .25s;
}

.hr-aside-toggle:hover{
  border-color: #e2e2e2;
  cursor: ew-resize;
}

.hr-aside.toggled{
  flex: 0 0 0;
  padding: 0;
}

/* -------------------------------------------------- */
/* Main
/* -------------------------------------------------- */

.hr-main{
  flex: 1;
  padding: 12px 0;
  background: #fefdfb;
}

.hr-main-container{
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding: 12px;
}

.hr-main-head{
  display: flex;
  align-items: center;
}

form input{
  border-color: #f9fafb; /* was invalid 'border: #f9fafb' */
  border-radius: 0;
}

/* -------------------------------------------------- */
/* Cards
/* -------------------------------------------------- */

.hr-cards{
  display: flex;
  flex-wrap: wrap;
  margin: -6px;
}

.hr-card{
  width: 100%;
  padding: 6px;
}

.hr-card.width-1-2{ width: 50%; }

.hr-card-inside{
  background: #fff;
  border: 1px solid #d3d3d3;
  border-radius: 9px;
  height: 100%;
}

.hr-card.w-shadow .hr-card-inside{ box-shadow: 0 3px 3px rgba(0,0,0,.06); }

.hr-card-head{
  padding: 12px 12px 12px 24px;
  border-bottom: 1px solid #d3d3d3;
  border-top-right-radius: 9px;
  border-top-left-radius: 9px;
}

.hr-card-main{ padding: 24px; }

/* Card navigation */

.hr-card-nav{ padding: 24px 24px 0 24px; }

.hr-card-nav ul{
  border-bottom: 2px solid #d9e8f3;
  display: flex;
  gap: 24px;
}

.hr-card-nav li{ margin-bottom: -2px; }

.hr-card-nav a{
  display: block;
  padding: 12px 0;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  border-bottom: 2px solid transparent;
  opacity: .5;
}

.hr-card-nav a:hover{ opacity: 1; }

.hr-card-nav li.active a{
  opacity: 1;
  border-color: #0068b2;
}

/* -------------------------------------------------- */
/* Stats
/* -------------------------------------------------- */

.hr-stats{
  display: flex;
  width: 100%;
  margin: -12px;
  padding-bottom: 12px;
}

.hr-stat{
  padding: 12px;
  flex-grow: 1;
}

.hr-stat:last-of-type{ border: none; }

.hr-stat dt{
  font-size: 13px;
  padding-bottom: 9px;
  font-weight: 600;
}

.hr-stat dd{
  display: flex;
  align-items: baseline;
  font-size: 36px;
  font-weight: 700;
}

.hr-stat dd span{
  font-size: 16px;
  font-weight: 400;
  opacity: .5;
  padding-left: 3px;
}

.hr-sm-text{ font-size: 13px; }

/* -------------------------------------------------- */
/* Tables
/* -------------------------------------------------- */

.hr-table-controls{
  display: flex;
  align-items: center;
  justify-content: end;
  gap: 9px;
  padding: 24px 0;
}

.hr-table-controls-text{ margin-right: auto; }

/* Common Table */
table.hr-table{ width: 100%; }

table.hr-table td,
table.hr-table th{
  vertical-align: middle;
  text-align: left;
  padding: 9px 12px;
  border-bottom: 1px solid #e2e2e2;
  font-size: 14px;
  line-height: 1.2em;
}

table.hr-table.hr-no-borders,
table.hr-table.hr-no-borders tr:last-child td{
  border: none;
}

table.hr-table.hr-table-th-side{ margin-bottom: 12px; }

table.hr-table.hr-table-th-side th{
  padding-left: 0;
  width: 200px;
}

.hr-table-hd{ font-size: 18px; }

table.hr-table th{
  font-weight: 600;
  height: 60px;
  white-space: nowrap;
}

table.hr-table tr:hover{ background-color: rgba(34,46,100,.03); }

/* Table buttons */

.hr-btn-sort{
  display: inline-flex;
  gap: 6px;
  font-size: 14px;
  color: #121212;
  font-weight: 600;
}

.hr-btn-sort svg{ display: none; }

.hr-btn-sort-up svg,
.hr-btn-sort-dwn svg{ display: inline-block; }

.hr-btn-sort-up svg{ transform: rotate(180deg); }

.hr-btn-disabled{
  opacity: .5;
  cursor: not-allowed;
}

/* -------------------------------------------------- */
/* Badges
/* -------------------------------------------------- */

.hr-badge-success,
.hr-badge-warning,
.hr-badge-error,
.hr-badge-info{
  display: inline-block;
  padding: 3px 6px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 500;
  color: #16a349;
  background: #e7f6ed;
}

.hr-badge-warning{
  color: #f59d09;
  background: #fef5e6;
}

.hr-badge-error{
  color: #f14343;
  background: #fdecec;
}

.hr-badge-info{
  color: #0068b2;
  background-color: #f4fbff;
}

.hr-badge-counter{
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 600;
  color: #fff;
  background: #121212;
}

.hr-btn-fill .hr-badge-counter{
  color: #121212;
  background: #fff;
}

/* -------------------------------------------------- */
/* News
/* -------------------------------------------------- */

.hr-news-wrap{ overflow-x: scroll; }

.hr-news-item{
  padding-bottom: 12px;
  border-bottom: 1px solid #e2e2e2;
  margin-bottom: 12px;
}

.hr-news-item:last-child{
  padding-bottom: 0;
  border: none;
  margin-bottom: 0;
}

.hr-news-item .hr-news-meta{
  font-size: 13px;
  font-weight: 600;
}

.hr-news-item p{
  font-size: 15px;
  padding: 0;
}

/* -------------------------------------------------- */
/* Filter/Side Shelf
/* -------------------------------------------------- */

.hr-filter-overlay{
  /* display: block; */ /* enable for testing */
  display: none;
  position: fixed;
  z-index: 1000;
  inset: 0;
  background: rgba(0,0,0,.25);
}

.hr-filter-overlay.toggled{ display: block; }

.hr-filter{
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 360px;
  background: #fff;
  box-shadow: 0 0 6px rgba(0,0,0,.06);
}

.hr-filter-head{
  padding: 0 18px 0 24px;
  border-bottom: 1px solid #d3d3d3;
  height: 78px;
}

.hr-filter-head h3{
  display: flex;
  align-items: center;
  gap: 6px;
}

.hr-filter-main{ overflow-y: auto; }

.hr-filter-main-pad{ padding: 24px; }

/* Group header button */
.hr-btn-filter-group-head{
  display: flex;
  align-items: center;
  gap: 9px;
  width: 100%;
  border-top: 1px solid #d3d3d3;
  border-bottom: 1px solid #d3d3d3;
  padding: 9px 18px 9px 24px;
  margin-top: -1px;
}

.hr-btn-filter-group-head h4{
  padding: 0;
  font-size: 16px;
  font-weight: 600;
}

.hr-btn-filter-group-head span{ margin-left: auto; }

.hr-btn-filter-group-head:hover{ background-color: rgba(0,104,178,.06); }

.hr-filter-group .hr-filter-group-main{ display: none; }

.hr-filter-group.toggled .hr-filter-group-main{ display: block; }

.hr-filter-group.toggled .hr-btn-filter-group-head svg{ transform: rotate(-180deg); }

.hr-filter-foot{
  margin-top: auto;
  padding: 12px 24px;
  background: #f9fafb;
  border-top: 1px solid #d3d3d3;
}

.hr-filter-group-main{ padding: 24px; }

/* Form inputs */

input, select{
  font-family: "Inter", Arial, sans-serif;
  background-color: #fff;
  font-size: 16px;
  color: #121212;
  width: 100%;
  border: 1px solid #d3d3d3;
  border-radius: 6px;
  padding: 12px;
}

input[type="checkbox"]{
  width: auto;
  height: auto;
  padding: 0;
}

input[type="search"]{
  height: 48px;
  border-radius: 24px;
}

.hr-filter-search input{
  background: url("/assets/images/search.svg") no-repeat 12px center;
  padding-left: 41px;
}

.hr-filter-check-list{ padding-top: 12px; }

.hr-filter-check-list ul{
  background-color: rgba(0,104,178,.06);
  max-height: 200px;
  overflow-x: auto;
  border-radius: 6px;
  padding: 6px 6px 0 6px;
}

.hr-filter-check-list li{ padding-bottom: 6px; }

.hr-filter-check-list input{ display: none; }

.hr-filter-check-list label span{
  display: flex;
  align-items: center;
  padding: 0 12px 0 29px;
  min-height: 32px;
  border-radius: 6px;
  color: #0068b2;
  font-size: 14px;
  background: url("/assets/images/check-box-empty.svg") no-repeat 6px center;
}

.hr-filter-check-list label span:hover{ background-color: rgba(0,104,178,.06); }

.hr-filter-check-list input[type="checkbox"]:checked + span{
  background-image: url("/assets/images/check-box-selected.svg");
  background-color: #0068b2;
  color: #fff;
}

.hr-field-row{ padding-bottom: 6px; }

.hr-cal-picker{ position: relative; }

.hr-cal-picker svg{
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  z-index: 666;
}

/* -------------------------------------------------- */
/* Leave
/* -------------------------------------------------- */

.hr-mo-yr{
  display: block;
  font-size: 12px;
}

.hr-schedule-cols{ display: flex; }

.hr-schedule-cols .hr-card-main{ flex-grow: 1; }

.hr-schedule-cols .hr-card-calendar{
  padding: 24px;
  width: 336px;
}

.hr-schedule{
  display: flex;
  gap: 12px;
  padding: 6px 0;
}

.hr-schedule-labels{
  width: 94px;
  border-right: 1px solid #e2e2e2;
}

.hr-schedule-labels div{
  height: 120px;
  border-top: 1px solid #e2e2e2;
  font-size: 12px;
}

.hr-schedule-labels div:last-child{ height: 1px; }

.hr-schedule-labels span{
  position: relative;
  left: 0;
  top: -6px;
  display: inline-block;
  width: 70px;
  background: #fff;
  text-align: right;
  padding-right: 6px;
}

.hr-schedule-slots{
  display: flex;
  width: 100%;
  gap: 12px;
  position: relative;
}

.hr-slot-data{
  position: sticky;
  top: 90px;
}

.hr-slot{
  position: relative;
  flex: 1;
  left: 0;
  right: 0;
  background: #fdecec;
  padding: 12px;
  font-size: 13px;
  line-height: 1.4em;
  color: #f14343;
  border-left: 3px solid #f14343;
}

.hr-slot-title{
  font-weight: 700;
  display: block;
}

.hr-cal-populated{ background: #fdecec; }

.hr-cal-slots{
  position: absolute;
  left: 6px;
  bottom: 6px;
}

.hr-cal-slot{
  text-align: left;
  font-size: 13px;
  line-height: 1.4em;
  color: #f14343;
  padding-top: 6px;
}

/* Calendar */

.hr-cal-controls{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 0 0 24px 0;
}

.hr-cal-controls h4{ padding: 0; }

.hr-cal-controls button.hr-btn{
  height: 30px;
  min-width: 30px;
  border-radius: 15px;
  padding: 0;
}

.hr-table-cal{ width: 100%; }

.hr-table-cal th,
.hr-table-cal td{
  font-size: 12px;
  padding: 3px;
  text-align: center;
}

.hr-table-cal-full{
  border: 1px solid #e2e2e2;
  border-right: none;
  border-bottom: none;
}

.hr-table-cal th{
  font-weight: 700;
  padding: 0 12px 12px 12px;
}

.hr-table-cal-full th,
.hr-table-cal-full td{
  position: relative;
  border: 1px solid #e2e2e2;
  border-left: none;
  border-top: none;
  padding: 6px;
  height: 150px;
  text-align: right;
  overflow: hidden;
  width: 14.28%;
}

.hr-table-cal-full th{
  text-align: center;
  height: auto;
  padding: 12px;
}

.hr-table-cal .hr-cal-day{
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  border-radius: 18px;
  font-size: 12px;
  font-weight: 500;
  color: #0068b2;
}

.hr-table-cal.hr-table-cal-full .hr-cal-day{ color: #121212; }

.hr-table-cal .hr-cal-day-disabled{ opacity: .5; }

.hr-table-cal .hr-cal-day:hover{ background-color: rgba(0,104,178,.06); }

.hr-table-cal-active .hr-cal-day,
.hr-table-cal-active .hr-cal-day:hover{
  background-color: #0068b2;
  color: #fff;
}

.hr-table-cal.hr-table-cal-full .hr-table-cal-active .hr-cal-day,
.hr-table-cal.hr-table-cal-full .hr-table-cal-active .hr-cal-day:hover{ 
  background: #121212; 
  color: #fff;
}

/* -------------------------------------------------- */
/* Breakpoints
/* -------------------------------------------------- */

@media screen and (max-width: 1520px){
  .hr-aside{ display: none; }

  .hr-aside.toggled{
    position: fixed;
    bottom: 0;
    width: 240px;
    z-index: 999;
    padding: 24px 12px;
    display: block;
  }
}

@media screen and (max-width: 1080px){
  /* collapse calendar table columns (start) */
  table.hr-table-cal.hr-table-cal-full th,
  table.hr-table-cal.hr-table-cal-full .hr-cal-day{
    display: none;
  }

  table.hr-table-cal.hr-table-cal-full td,
  table.hr-table-cal.hr-table-cal-full tr{
    display: block;
    width: 100%;
  }

  table.hr-table-cal.hr-table-cal-full td{
    padding: 12px;
    height: auto;
    border-bottom: 1px solid #e2e2e2;
    border-top: none;
    border-left: none;
    text-align: left;
  }

  table.hr-table-cal.hr-table-cal-full .hr-cal-slots{
    position: static;
    padding: 6px 0 0 0;
  }

  table.hr-table-cal.hr-table-cal-full td::before{
    content: attr(data-label);
    display: block;
    font-size: 13px;
    padding-bottom: 6px;
    font-weight: 500;
    opacity: .5;
  }
  /* collapse calendar table columns (end) */
}

@media screen and (max-width: 950px){
  .hr-card.width-1-2{ width: 100%; }
  .hr-card-main{ padding: 24px 12px; }

  /* collapse table columns (start) */
  table.hr-table th{ display: none; }

  table.hr-table td,
  table.hr-table tr{
    display: block;
    width: 100%;
  }

  table.hr-table td{
    padding: 12px;
    border: none;
  }

  table.hr-table td,
  table.hr-table.hr-no-borders tr:last-child td{
    background: #fcfcfc;
    border: 1px solid #e2e2e2;
    border-top: none;
  }

  table.hr-table td:first-child,
  table.hr-table.hr-no-borders tr:last-child td:first-child{
    border-top-right-radius: 9px;
    border-top-left-radius: 9px;
    border-top: 1px solid #e2e2e2;
  }

  table.hr-table td:last-child,
  table.hr-table.hr-no-borders tr:last-child td:last-child{
    margin-bottom: 12px;
    border-bottom-right-radius: 9px;
    border-bottom-left-radius: 9px;
    border-bottom: 1px solid #e2e2e2;
  }

  table.hr-table.hr-table-th-side td{
    border: 1px solid #e2e2e2;
    border-top: none;
    border-radius: 0;
    margin-bottom: 0;
  }

  table.hr-table.hr-table-th-side tr:first-of-type td{
    border-top: 1px solid #e2e2e2;
    border-top-right-radius: 9px;
    border-top-left-radius: 9px;
  }

  table.hr-table.hr-table-th-side tr:last-of-type td{
    border-bottom: 1px solid #e2e2e2;
    border-bottom-right-radius: 9px;
    border-bottom-left-radius: 9px;
  }

  table.hr-table tr:last-child td:last-child,
  table.hr-table.hr-no-borders tr:last-child td:last-child{
    margin-bottom: 0;
  }

  table.hr-table td::before{
    content: attr(data-label);
    display: block;
    font-size: 11px;
    padding-bottom: 6px;
    font-weight: 500;
    opacity: .5;
  }
  /* collapse table columns (end) */

  table.hr-table .hr-menu-dd-btm-rt{
    right: auto;
    left: 0;
    top: auto;
    bottom: 100%;
    margin-top: 0;
    margin-bottom: 4px;
  }

  .hr-btn-cal{ display: block; }
  .hr-layout-col-cal{ display: none; }
}

@media screen and (max-width: 550px){
  .hr-stats{ flex-wrap: wrap; }
  .hr-stats .hr-stat{ width: 100%; }
  a.hr-logo .hr-logo-txt{ display: none; }
  .hr-schedule-labels{ display: none; }
  .hr-schedule-slots{ flex-wrap: wrap; }

  .hr-slot{
    width: 100%;
    flex: auto;
    position: static;
    height: auto !important;
  }
}
