@layer tbl {

.res_pages:empty, .table_wrap:empty { display: none; }

.res_pages {
  display: flex;
  justify-content: center;
  margin: 15px 0;
}

.res_pages .btn-gray {
  min-width: 50px;
  width: 50px;
  margin: 0 4px;
}
.res_pages .btn-gray.disabled, 
.res_pages .btn-gray.disabled:hover {
  cursor: default;
  background-color: rgba(255,255,255,.3);
}

.res_total {
  text-align: center;
  color: rgba(255,255,255,.6);
  font-size: 16px;
  margin-bottom: -10px;
  user-select: none;
}

.modal_tbl {
  width: calc(100% - 60px);
  margin-inline: auto;
}

.filters { height:28px; }

.table_wrap {
  border-radius: 10px;
  box-shadow: 0 0 0 5px #262626; 
  margin: 25px 0;
  user-select: none;
  &.minimal { 
    box-shadow: 0 0 0 1px #000; 
    border-radius: 0;
    width: max-content;
    margin: 0 auto;
  }
  &.mi20 { margin: 0 20px; }
  &.mi30 { margin: 0 30px; }
}
.table_wrap.no-shadow { box-shadow: none; }
.table_wrap.sml-shadow { box-shadow: 0 0 0 2px #262626; margin: 10px 0; border-radius: 10px; }
.table_wrap.w90 { width: 90%; margin: auto; }
.table_wrap.wdel { width: calc(100% - 40px); margin-inline: auto; }

.table_wrap div.tbl:first-child { border-radius: 10px 10px 0 0; }
.table_wrap div.tbl:last-child { border-radius: 0 0 10px 10px; }
.table_wrap div.tbl:last-child .tblc:first-child { border-radius: 0 0 0 10px; }
.table_wrap div.tbl:last-child .tblc:last-child { border-radius: 0 0 10px 0; }

.table_wrap .tbl:not(.ftr):nth-child(2n) { background-color: rgba(255,255,255,.15); }

.table_wrap.no-hdr .tbl:only-child { border-radius: 10px; }

.tbl {
  transition: background-color .3s linear;
  background-color: rgba(255,255,255,.1);
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  margin: 0;
  padding: 0;
  position: relative;
}

.table_wrap:has(.noradius) div.tbl:first-child { border-radius: 0; }
.tbl.hdr.sticky {
  position: sticky;
  top: 0;
  background-color:#161616;
  opacity: 1;
  z-index: 1;
  box-shadow: 0px 1px 3px 2px rgba(0,0,0,.5);
}


.tbl.ftr { 
  background-color:#161616;
  border-top:2px solid black; 
}

.tbl.highlight { background-color: rgba(255,255,255,0.4) !important; }
.tbl.active { background: linear-gradient(180deg,#06f,#003fff); }
.tbl.selected { background: linear-gradient(180deg,#8cbaff,#547eff); }

.tbl:not(.none,.hdr,.ftr):hover,
.table_wrap .tbl:not(.none,.hdr,.ftr):nth-child(2n):hover,
.tbl.hvr_active {
  background-color: rgba(255,255,255,.25) !important;
  cursor: pointer;
}
.tbl:is(.hdr,.ftr) { background-color: #161616; display: flex; align-items: center; justify-content: center; }
.tbl.hdr, .tbl.hdr:hover { cursor: default; }

.tbl.hdr .tblc { color:rgba(255,255,255,.9); font-weight: bold; }

.tbl.none { border-radius: 0 0 10px 10px; display:block !important; }

.tbl.yes .tblc { }
.tbl.no .tblc, .tbl.red .tblc { color:#CD5C5C; }

.table_wrap.noheight .tblc {
  height: unset;
  line-height: unset;
  padding: 10px;
}

.tblc.twolines { line-height: unset; }
.tblc.lines { height: auto; line-height: 200%; }

.tblc {
  box-sizing: border-box;
  flex-grow: 1;
  width: 100%;
  overflow: hidden;
  list-style: none;
  padding: 1px 15px 0;
  height: 42px;
  line-height: 42px;
  border-right: 1px solid black;
  color: rgba(255,255,255,.9);
  transition: color .3s ease-in-out;
  z-index: 0;
  position: relative;
  font-size: 14px;
}
.tbl .tblc:last-child { border-right:0; }

.table_wrap.short .tblc { height: 38px; line-height: 38px; }

.tbl.red .tblc { color:#df5d5d; }

.tblc:has([data-tooltip]) { overflow:visible; }

.tblc.c { text-align: center; }
.tblc.l { text-align: left; }
.tblc.r { text-align: right; }
.tblc.oneline {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  padding-right: 20px;
}

.tblc.lnk:before { content: '\f08e'; left: unset; right: 10px; }
.tblc.lnk.c:before { content: '\f08e'; right: unset; }
.tblc.lnk:hover:before { color:lightgreen; }
.mobile .table_wrap:not(.nomobile) .tblc.lnk:before { right: 50%; }
.tblc.lnk.c:before { right: unset; left: 50% }

.tblc a.faw.orh { opacity: 0; }
.tblc:hover a.faw.orh { opacity:1; }
.tblc .ml20 { margin-left:20px; }

.mobile .table_wrap:not(.nomobile) .tblc.c.ml, .tablet .table_wrap:not(.nomobile) .tblc.c.ml { text-align: left; }
.mobile .table_wrap:not(.nomobile) .tblc.c.mr, .tablet .table_wrap:not(.nomobile) .tblc.c.mr { text-align: right; }

.tbl.checked .tblc, .tbl.checked .tblc:before { color: #90ee90; transition: color 0.3s ease-in-out; }
.tbl.clicked .tblc { text-decoration: line-through; color: rgba(255,255,255,.5); }

.tblc.min   { width: min-content !important; }
.tblc.w30   { width: 30px !important; }
.tblc.w40   { width: 40px !important; }
.tblc.w60   { width: 60px !important; }
.tblc.w80   { width: 80px !important; }
.tblc.w90   { width: 90px !important; }
.tblc.w100  { width: 100px !important; }
.tblc.w120  { width: 120px !important; }
.tblc.w150  { width: 150px !important; }
.tblc.w180  { width: 180px !important; }
.tblc.w200  { width: 200px !important; }
.tblc.w275  { width: 275px !important; }
.tblc.w300  { width: 300px !important; }
.tblc.w100p { width:100% !important; }
.tblc.fg1   { flex-grow: 1 !important; }
.tblc.exct  { flex-grow: 0 !important; }

.tblc.sort  { cursor: pointer; }
.tblc.sort_on  { color: lightgreen !important; }

.tblc div.valign {
  position: relative;
  top: 50%;
  transform: translateY(-50%);
}

/* Floating Icon */
.tblc.fltr, .tblc.fltl {
  position: absolute;
  right: -50px;
  text-align: center;
  width: 50px !important;
  opacity: 0;
}
.tblc.fltl { left:-50px; right: none; }
.tblc.fltl.modal { left: -40px; border-right: 0; }

.tbl:hover .tblc.fltr,
.tbl:hover .tblc.fltl { opacity: 1; }

.tablet .table_wrap:not(.nomobile) .tblc.fltl, 
.mobile .table_wrap:not(.nomobile) .tblc.fltl { display:none; }

.tbl.none .tblc {
  font-size: 18px;
  color: rgba(255,255,255,.8);
  font-weight: bold;
  text-align: center;
  cursor: default;
  height: 80px;
  line-height: 80px;
}

.tbl.exact-cells .tblc { flex-grow:0; }

.tblc input.tbl_input { 
  border: 2px solid var(--light-border);
  color: var(--white);
  width: 100%;
  font-size: 14px;
  border-radius: 5px;
  transition: border-color .15s ease-in-out;
  background-color: #262626;
  padding: 0;
  text-align: center;
  height:30px;
}
.tblc input.tbl_input.left { text-align:left; padding-inline:10px; }
.tblc input.tbl_input::selection {
  background-color: rgba(255,255,255,.25);
  color:white;
}
.tblc input.tbl_input:focus-within,
.tblc input.tbl_input:focus-visible {
  border: 2px solid var(--green);
  outline: none;
}


/* Table column sizing */
.tbl-2c .tblc { width: 50%;    }
.tbl-3c .tblc { width: 33.33%; }
.tbl-4c .tblc { width: 25%;    }
.tbl-5c .tblc { width: 20%;    }
.tbl-6c .tblc { width: 16.6%;  }
.tbl-7c .tblc { width: 14.2%;  }
.tbl-8c .tblc { width: 12.5%;  }
.tbl-9c .tblc { width: 11.11%;  }
.tbl-10c .tblc { width: 10%;  }
.tbl-11c .tblc { width: 9.09%;  }
.tbl-12c .tblc { width: 8.33%;  }

.cf { border-right: 0; }
.cfl { border-left: 1px solid black; }

.tablet .table_wrap:not(.nomobile) .tbl-col .tbl.hdr, .mobile .table_wrap:not(.nomobile) .tbl-col .tbl.hdr { display: none; }
.tablet .table_wrap:not(.nomobile) .tbl-col .tbl,     .mobile .table_wrap:not(.nomobile) .tbl-col .tbl { display: flex; height: auto; padding:10px 0 10px 15px; border-radius: 10px !important; }
.tablet .table_wrap:not(.nomobile) .tbl-col .tblc,    .mobile .table_wrap:not(.nomobile) .tbl-col .tblc { width: 100% !important; padding:2px; border: 0; }
/*.tablet .tbl-col .tblc.c,  .mobile .tbl-col .tblc.c { text-align: left; }*/
.tablet .table_wrap:not(.nomobile) .tbl-col .tbl, .mobile .table_wrap:not(.nomobile) .tbl-col .tbl { min-height: 60px; }
.tablet .table_wrap:not(.nomobile), .mobile .table_wrap:not(.nomobile) { 
  box-shadow: none; 
  border-radius: 0; 
  border:0 !important; 
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: 20px;
}
.tablet .table_wrap:not(.nomobile) .tbl-col .chide, .mobile .table_wrap:not(.nomobile) .tbl-col .chide { display: none; }

.col_icn { position:absolute; right:5px; top:0; height:100%; display:flex; }
.col_icn.r { position:relative; right:unset; top:unset; }
.col_icn a { display:block; width:32px;  }
.col_icn a.kft:before { color:var(--white); transition: color .3s ease-in-out; }
.col_icn a.kft:before { color:var(--white); }
.col_icn a.kft:hover:before { color:lightgreen; }

.tblc.hover.sel, 
.tblc.hover:hover, 
.tblc.kft:is(.mail,.phone,.vcard,.sq,.paper-plane):hover { color:lightgreen; cursor: pointer; }

.tblc .onhover, .tblc .onhoverf { display:none; }
.tbl:hover .onhover { display:revert; }
.tbl:hover .onhoverf { display:flex; }

.tblc.del:before {
  font-size: 18px;
  color: #595959;  
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%,-50%);
}
.tblc.del:hover:before { color: #d84d4f; }
.hdr .tblc.del:before { color: white; font-weight: normal; }

.desktop .dskhide { display: none; }

}