/*
* demo.css
* File include item demo only specific css only
******************************************************************************/
[aria-disabled="true"] {
  pointer-events: none;
  color: gray;
  cursor: not-allowed;
  opacity: 0.5;
}

.validation{
  color:orangered;
  font-size: xx-small;
  font-style: italic;
}
.goLogin, .goRegister {
  color: #ffffff!important;
}

.goLogin:hover:before, .goRegister:before{
  color: #ffffff!important;
}

.rectangle {
  border: 2px dashed #000;
  position: absolute;
  cursor:move;
}
input[type="number"] {
  text-align: right;
}

.layout-navbar.navbar-detached.container-xxl {
  max-width:calc(96% - 1rem * 5)!important;
}
.spinner{
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  height: 100%;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  background: rgba(67, 89, 113, 0.5);
  z-index: 2000;
}

.spinner .loader {
  display: block;
  position: relative;
  font-size: 6px;
  height: 120px;
  width: 120px;
  margin: 0 auto;
}

.spinner .loader div {
  box-sizing: border-box;
  display: block;
  position: absolute;
  height: 120px;
  width: 120px;
  border: 12px solid #fff;
  border-radius: 50%;
  animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  border-color: #fff transparent transparent transparent;
}

input[type='text']:read-only {
  background-color: #EEEEEE;
}

.spinner .loader div:nth-child(1) {
  animation-delay: -0.45s;
}

.spinner .loader div:nth-child(2) {
  animation-delay: -0.3s;
}

.spinner .loader div:nth-child(3) {
  animation-delay: -0.15s;
}

.menu .app-brand.demo {
  height: 64px;
  margin-top: 12px;
}

.app-brand-logo.demo svg {
  width: 22px;
  height: 38px;
}

.app-brand-text.demo {
  font-size: 1.36rem;
  letter-spacing: -1px;

}

/* ! For .layout-navbar-fixed added fix padding top to .layout-page */
/* Detached navbar */
.layout-navbar-fixed .layout-wrapper:not(.layout-horizontal):not(.layout-without-menu) .layout-page {
  padding-top: 74px !important;
}
/* Default navbar */
.layout-navbar-fixed .layout-wrapper:not(.layout-without-menu) .layout-page {
  padding-top: 64px !important;
}
.docs-page .layout-navbar-fixed.layout-wrapper:not(.layout-without-menu) .layout-page,
.docs-page .layout-menu-fixed.layout-wrapper:not(.layout-without-menu) .layout-page {
  padding-top: 62px !important;
}

/* Navbar page z-index issue solution */
.content-wrapper .navbar {
  z-index: auto;
}

/*
* Content
******************************************************************************/

.demo-blocks > * {
  display: block !important;
}

.demo-inline-spacing > * {
  margin: 1rem 0.375rem 0 0 !important;
}

/* ? .demo-vertical-spacing class is used to have vertical margins between elements. To remove margin-top from the first-child, use .demo-only-element class with .demo-vertical-spacing class. For example, we have used this class in forms-input-groups.html file. */
.demo-vertical-spacing > * {
  margin-top: 1rem !important;
  margin-bottom: 0 !important;
}
.demo-vertical-spacing.demo-only-element > :first-child {
  margin-top: 0 !important;
}

.demo-vertical-spacing-lg > * {
  margin-top: 1.875rem !important;
  margin-bottom: 0 !important;
}
.demo-vertical-spacing-lg.demo-only-element > :first-child {
  margin-top: 0 !important;
}

.demo-vertical-spacing-xl > * {
  margin-top: 5rem !important;
  margin-bottom: 0 !important;
}
.demo-vertical-spacing-xl.demo-only-element > :first-child {
  margin-top: 0 !important;
}

.rtl-only {
  display: none !important;
  text-align: left !important;
  direction: ltr !important;
}

[dir='rtl'] .rtl-only {
  display: block !important;
}

/* Dropdown buttons going out of small screens */
@media (max-width: 576px) {
  #dropdown-variation-demo .btn-group .text-truncate {
    width: 231px;
    position: relative;
  }
  #dropdown-variation-demo .btn-group .text-truncate::after {
    position: absolute;
    top: 45%;
    right: 0.65rem;
  }
}

/*
* Layout demo
******************************************************************************/

.layout-demo-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-top: 1rem;
}
.layout-demo-placeholder img {
  width: 900px;
}
.layout-demo-info {
  text-align: center;
  margin-top: 1rem;
}

.cntrlCheck{
  position:relative;
  z-index: 1040;
  width:50px;
  height: 50px;
  margin-top: -40px;
  padding-right: 1px;
  float:right;
}

.cntrlCheck input{
  width: 37px;
  border-radius: 6px;
  height: 37px;
}

#b_show_pl.form-check-input:checked,.form-check-input[type=checkbox]:indeterminate {
  background-color: var(--bs-warning)!important;
  border-color: #696cff;
  box-shadow: 0 2px 4px 0 rgba(105, 108, 255, 0.4);
}

#b_show_el.form-check-input:checked,.form-check-input[type=checkbox]:indeterminate {
  background-color: var(--bs-danger)!important;
  border-color: #696cff;
  box-shadow: 0 2px 4px 0 rgba(105, 108, 255, 0.4);
}

.showdata {position: relative;z-index: 999;height: 300px; background-color: white;border-radius: 10px;}
.mt-area {margin-top: 1rem;}

@media (max-width: 1200.98px) {
  .showdata{position: relative;}
  .mt-area {margin-top: 10rem;}
}

@media (max-width: 991.98px) {
  .mt-area {margin-top: 12rem;}
}

@media (max-width: 767.98px) {
  .mt-area {margin-top: 57rem;}
}

.landing-hero .hero-title {
  background: linear-gradient(to right, #28c76f 0%, #5a4aff 47.92%, #ff3739 100%);
  background-size: 200% auto;
  color: #696dff;
  background-clip: text;
  line-height: 1.2;
  text-fill-color: transparent;
}
.landing-hero {
  border-radius: 0 0 3.5rem 3.5rem;
  padding-top: 6.2rem;
}

/* === ucimejinak nábor 2026/27 ====================================== */

/* Top recruitment banner */
#topRecruitBanner {
  position: relative;
  z-index: 1001;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .75rem;
  padding: .55rem 1rem;
  text-align: center;
  text-decoration: none;
  color: #fff !important;
  background: linear-gradient(90deg, #696cff 0%, #ff3e8e 50%, #ff8a3d 100%);
  font-size: .95rem;
  line-height: 1.3;
}
#topRecruitBanner .trb-emoji { font-size: 1.2rem; }
#topRecruitBanner .trb-cta {
  background: rgba(255, 255, 255, .18);
  padding: .2rem .65rem;
  border-radius: 999px;
  font-weight: 600;
  white-space: nowrap;
}
@media (max-width: 575px) {
  #topRecruitBanner { flex-direction: column; gap: .25rem; padding: .5rem .75rem; font-size: .85rem; }
  #topRecruitBanner .trb-text { display: block; }
}

/* Sticky mobile contact CTA */
#stickyContactCta {
  position: fixed;
  right: 16px;
  bottom: 16px;
  z-index: 1040;
  display: flex;
  align-items: center;
  gap: .5rem;
  padding: .75rem 1.1rem;
  border-radius: 999px;
  background: linear-gradient(90deg, #696cff 0%, #ff3e8e 100%);
  color: #fff !important;
  text-decoration: none;
  font-weight: 600;
  box-shadow: 0 8px 24px rgba(105, 108, 255, .45);
  animation: stickyCtaPulse 2.4s ease-in-out infinite;
}
#stickyContactCta:hover {
  filter: brightness(1.05);
  transform: translateY(-2px);
  transition: transform .15s ease;
}
@keyframes stickyCtaPulse {
  0%, 100% { box-shadow: 0 8px 24px rgba(255, 62, 142, .35); }
  50%      { box-shadow: 0 8px 32px rgba(255, 62, 142, .85); }
}
@media (max-width: 380px) {
  #stickyContactCta span { display: none; }
  #stickyContactCta { padding: .85rem; }
}

/* Contact section gradient headline */
.contact-headline-gradient {
  background: linear-gradient(90deg, #696cff 0%, #ff3e8e 50%, #ff8a3d 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1.15;
}

/* Subject feature cards — equal height + hover lift */
.features-icon-wrapper .features-icon-box { display: flex; flex-direction: column; }
.features-icon-wrapper .features-icon-box > .card {
  flex: 1 1 auto;
  transition: transform .2s ease, box-shadow .2s ease;
}
.features-icon-wrapper .features-icon-box > .card:hover {
  transform: translateY(-6px);
  box-shadow: 0 .75rem 1.75rem rgba(105, 108, 255, .18) !important;
}

/* Stats cards — hover lift */
.stat-card { transition: transform .2s ease, box-shadow .2s ease; }
.stat-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 .5rem 1.25rem rgba(67, 89, 113, .12) !important;
}

/* Pricing — equal height, hover lift, recommended highlight */
.landing-pricing .row > [class*='col-'] > .card {
  height: 100%;
  transition: transform .2s ease, box-shadow .2s ease;
}
.landing-pricing .row > [class*='col-'] > .card:hover { transform: translateY(-4px); }
.pricing-recommended {
  border-width: 2px !important;
  box-shadow: 0 .75rem 2rem rgba(105, 108, 255, .25) !important;
  position: relative;
  overflow: visible;
}
.pricing-recommended::before {
  content: "⭐ NEJOBLÍBENĚJŠÍ";
  position: absolute;
  top: -14px;
  left: 50%;
  transform: translateX(-50%);
  background: linear-gradient(90deg, #696cff 0%, #ff3e8e 100%);
  color: #fff;
  padding: .3rem .9rem;
  border-radius: 999px;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .5px;
  white-space: nowrap;
  box-shadow: 0 4px 12px rgba(255, 62, 142, .4);
}
@media (min-width: 1200px) {
  .pricing-recommended { transform: scale(1.03); }
  .pricing-recommended:hover { transform: scale(1.03) translateY(-4px); }
}

/* Reviews swiper */
.reviews-swiper { padding: 1rem .25rem 3rem; }
.reviews-swiper .swiper-slide { height: auto; }
.reviews-swiper .swiper-slide .card { height: 100%; }
.reviews-swiper .swiper-pagination-bullet-active { background: #696cff; }