﻿@charset "UTF-8";
:root {
  --brand-900: #000455;
  --brand-800: #00056b;
  --brand-700: #121895;
  --brand-600: #1c25c3;
  --brand-500: #3f47cc;
  --brand-400: #5f65d8;
  --brand-300: #878ce5;
  --brand-200: #b3b7ff;
  --brand-100: #dfe1ff;
  --brand-50: #f4f5fd;
  --accent-900: #7a4f00;
  --accent-700: #b28400;
  --accent-600: #e5a900;
  --accent-500: #ffbd01;
  --accent-400: #ffc92e;
  --accent-200: #f0dca9;
  --accent-100: #fff1d1;
  --accent-50: #fff8e6;
  --danger-700: #b90000;
  --danger-500: #dd0000;
  --danger-400: #ef2f2f;
  --danger-200: #fc8d8d;
  --danger-50: #f8e0da;
  --success-700: #1d6b3a;
  --success-500: #62bc30;
  --success-400: #72ce3f;
  --success-50: #dcf1e3;
  --gray-900: #242424;
  --gray-800: #333333;
  --gray-700: #535353;
  --gray-600: #6c6c6c;
  --gray-500: #777777;
  --gray-400: #999999;
  --gray-300: #c0c0c0;
  --gray-250: #cacaca;
  --gray-200: #dddddd;
  --gray-100: #eeeeee;
  --gray-50: #f7f7f7;
  --white: #ffffff;
  --black: #000000;
  --plocha: #eef0f7;
  --ton: #e8ebf8;
  --linka: #d9ddee;
  --farba-nadpis: #141a3d;
  --farba-text: #2c3150;
  --farba-tlmeny: #5c6285;
  --akcent: #3f47cc;
}

@font-face {
  font-family: "Inter Variable";
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  src: url(fonts/inter-latin-ext-wght-normal.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Inter Variable";
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  src: url(fonts/inter-latin-wght-normal.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Inter Variable";
  font-style: italic;
  font-display: swap;
  font-weight: 100 900;
  src: url(fonts/inter-latin-ext-wght-italic.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Inter Variable";
  font-style: italic;
  font-display: swap;
  font-weight: 100 900;
  src: url(fonts/inter-latin-wght-italic.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "icomoon";
  src: url("fonts/icomoon.eot?ich25o");
  src: url("fonts/icomoon.eot?ich25o#iefix") format("embedded-opentype"), url("fonts/icomoon.ttf?ich25o") format("truetype"), url("fonts/icomoon.woff?ich25o") format("woff"), url("fonts/icomoon.svg?ich25o#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
}
[class^=icon-], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "icomoon" !important;
  font-size-adjust: none;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-pokladna:before {
  content: "\e905";
}

.icon-teamviewer:before {
  content: "\e900";
}

.icon-ucet:before {
  content: "\e901";
}

.icon-eshop:before {
  content: "\e902";
}

.icon-domov:before {
  content: "\e903";
}

.icon-majetok:before {
  content: "\e904";
}

.icon-novinka:before {
  content: "\e92c";
}

.icon-sklad:before {
  content: "\e930";
}

.icon-kontakt:before {
  content: "\e942";
}

.icon-download:before {
  content: "\e960";
}

.icon-mzdy:before {
  content: "\e972";
}

.icon-servis:before {
  content: "\e995";
}

.icon-admin:before {
  content: "\e9b8";
}

.icon-location:before {
  content: "\e948";
}

.icon-keyboard:before {
  content: "\e955";
}

.icon-chat:before {
  content: "\e96f";
}

.icon-dochadzka:before {
  content: "\e975";
}

.icon-password:before {
  content: "\e98d";
}

.icon-menu:before {
  content: "\e9bd";
}

.icon-notification:before {
  content: "\ea08";
}

.icon-info:before {
  content: "\ea0c";
}

.icon-mail:before {
  content: "\ea83";
}

.icon-mail1:before {
  content: "\e945";
}

.icon-google:before {
  content: "\ea8b";
}

.icon-google2:before {
  content: "\ea8c";
}

.icon-facebook:before {
  content: "\ea90";
}

.icon-facebook2:before {
  content: "\ea91";
}

.icon-aktualizacia:before {
  content: "\ea2e";
}

.icon-euro:before {
  content: "\e93c";
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  margin: 0;
  padding: 0;
  width: 100%;
  font-family: "Inter Variable", "Segoe UI", Tahoma, Arial, sans-serif;
  /* Inter je sirsi ako povodne Calibri - zmensenie na podobnu velkost malych pismen, aby sa nerozbilo rozlozenie */
  font-size-adjust: 0.5;
  font-size: 16px;
  color: #333333;
  background-color: #ffffff;
}

img,
input[type=image] {
  max-width: 100%;
  height: auto;
}

:focus-visible {
  outline: 2px solid #3f47cc;
  outline-offset: 2px;
}

.skip-link {
  position: absolute;
  top: -100px;
  left: 16px;
  z-index: 2000;
  padding: 8px 16px;
  border-radius: 0 0 6px 6px;
  background-color: #3f47cc;
  color: #ffffff;
  font-weight: 600;
  text-decoration: none;
}

.skip-link:focus {
  top: 0;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.android {
  display: none;
}

.alert-text {
  font-size: 16px;
  color: #dd0000;
  font-weight: bold;
  padding: 5px;
  box-sizing: border-box;
  text-align: center;
  width: 100%;
  border: 2px solid #dd0000;
  background-color: #ffffff;
  margin-bottom: 10px;
  float: left;
}

.none {
  display: none;
}

h1 {
  padding: 0px;
  margin: 0px;
  font-size: 16px;
}

h2, h3, h4, h5, h6 {
  padding: 0;
  margin: 0;
  font-size: 14px;
}

.list_none {
  list-style-type: none;
}

p {
  margin: 10px;
}

.panel li {
  font-size: 13px;
}

/*lightbox*/
.small-galery-img-prehlad {
  max-height: 200px;
  max-width: 200px;
  margin-left: 50px;
  margin-top: 20px;
  margin-bottom: 20px;
  ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
  filter: alpha(opacity=80);
  -moz-opacity: 0.8;
  -khtml-opacity: 0.8;
  opacity: 0.8;
}

.small-galery-img-prehlad:hover {
  max-height: 200px;
  max-width: 200px;
  margin-left: 50px;
  margin-top: 20px;
  margin-bottom: 20px;
  ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  -khtml-opacity: 1;
  opacity: 1;
}

* html .small-galery-img-resize {
  width: expression((this.width/this.height)>=0.75?200:"auto");
  height: expression((this.width/this.height)<0.75?200:"auto");
}

.galeria-text {
  padding: 20px;
}

.galeria-text a {
  font-size: 18px;
  font-weight: bold;
  color: #eeeeee;
}

/*MESSAGE BOX*/
/*LOADING PANEL*/
.loading {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 10000;
  margin: 0;
  padding: 0;
}

.load_image {
  margin: 0 auto;
  text-align: center;
}

.load_text {
  margin: 0 auto;
}

.load_text p {
  text-align: center;
}

.upz {
  border: 2px solid #999999;
  color: #000000;
  background-color: #dddddd;
  font-size: 0.9em;
  visibility: visible;
  margin: 20% auto 0 auto;
  width: 500px;
  ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
  filter: alpha(opacity=50);
  -moz-opacity: 0.5;
  -khtml-opacity: 0.5;
  opacity: 0.5;
  padding-top: 5px;
  padding-bottom: 5px;
}

/*MANUAL*/
/*treeview*/
.nodeLevel1 {
  transition: all 0.5s linear;
  color: #ffffff;
  font-size: 16px;
  position: relative;
  font-weight: bold;
  width: 100%;
  padding-left: 5px;
  padding-right: 5px;
  line-height: 31px;
  box-sizing: border-box;
  border-bottom: 1px solid #cacaca;
}

.nodeLevel1 a {
  color: #000000;
  display: block;
}

.nodeLevel2 {
  transition: all 0.5s linear;
  font-size: 15px;
  font-weight: bold;
  width: 100%;
  box-sizing: border-box;
  line-height: 31px;
  padding-left: 5px;
  padding-right: 5px;
  background-color: #f7f7f7;
  border-bottom: 1px solid #cacaca;
}

.nodeLevel2 a {
  color: #000000;
  display: block;
}

.nodeLevel3 {
  transition: all 0.5s linear;
  font-size: 15px;
  font-weight: bold;
  width: 100%;
  box-sizing: border-box;
  line-height: 31px;
  padding-left: 5px;
  padding-right: 5px;
}

.nodeLevel3 a {
  color: #000000;
  display: block;
}

.nodeLevel4 {
  transition: all 0.5s linear;
  font-size: 15px;
  font-weight: bold;
  width: 100%;
  box-sizing: border-box;
  line-height: 31px;
  padding-left: 5px;
  padding-right: 5px;
}

.nodeLevel4 a {
  color: #000000;
  display: block;
}

.nodeLevel5 {
  font-size: 15px;
  font-weight: bold;
  width: 100%;
  box-sizing: border-box;
  line-height: 31px;
  padding-left: 5px;
  padding-right: 5px;
}

.nodeLevel5 a {
  color: #000000;
  display: block;
}

._menuHNS {
  opacity: 0.9;
  transition: all 0.5s linear;
}

._menuSNS {
  width: 100%;
  box-sizing: border-box;
  border-bottom: 2px solid #121895;
  color: #000000;
  font-weight: bold;
  line-height: 31px;
}

._menuSNS a {
  color: #000000;
}

.treeview {
  padding: 10px;
  width: 100%;
  float: left;
  margin: 0;
  box-sizing: border-box;
}

#strom {
  padding: 10px;
  background-color: #ffffff;
  border: 1px solid #cacaca;
  box-sizing: border-box;
}

/*DEFAULT STRÁNKA*/
.gradient {
  position: relative;
  min-height: 200px;
  background-image: linear-gradient(to right, hsl(211, 100%, 50%), hsl(179, 100%, 30%));
  z-index: 1;
}

.gradient::before {
  position: absolute;
  content: "";
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-image: linear-gradient(to bottom, hsl(344, 100%, 50%), hsl(31, 100%, 40%));
  z-index: -1;
  transition: opacity 0.5s linear;
  opacity: 0;
}

.gradient:hover::before {
  opacity: 1;
}

.news-box1 {
  box-sizing: border-box;
  float: left;
  width: 100%;
  padding: 10px;
  position: relative;
}

.news-title-s {
  border-top: 4px solid #878ce5;
  box-sizing: border-box;
  width: 100%;
  padding: 8px;
  float: left;
  border-right: 1px solid #c5cfd7;
  border-left: 1px solid #c5cfd7;
  border-bottom: 1px solid #c5cfd7;
}

.news-title-s a {
  float: left;
  color: #535353;
  text-decoration: none;
  font-size: 15px;
  font-weight: bold;
  transition: color 0.5s ease;
}

.news-title-t {
  border-top: 4px solid #ffbd01;
  box-sizing: border-box;
  width: 100%;
  padding: 8px;
  float: left;
  border-right: 1px solid #c5cfd7;
  border-left: 1px solid #c5cfd7;
  border-bottom: 1px solid #c5cfd7;
}

.news-title-t a {
  float: left;
  color: #535353;
  text-decoration: none;
  font-size: 15px;
  font-weight: bold;
  transition: color 0.5s ease;
}

.news-title-b {
  border-top: 4px solid #3f47cc;
  box-sizing: border-box;
  width: 100%;
  padding: 8px;
  float: left;
  border-right: 1px solid #c5cfd7;
  border-left: 1px solid #c5cfd7;
  border-bottom: 1px solid #c5cfd7;
}

.news-title-b a {
  float: left;
  color: #535353;
  text-decoration: none;
  font-size: 15px;
  font-weight: bold;
  transition: color 0.5s ease;
}

.news-title-f {
  border-top: 4px solid #1c25c3;
  box-sizing: border-box;
  width: 100%;
  padding: 8px;
  float: left;
  border-right: 1px solid #c5cfd7;
  border-left: 1px solid #c5cfd7;
  border-bottom: 1px solid #c5cfd7;
}

.news-title-f a {
  float: left;
  color: #535353;
  text-decoration: none;
  font-size: 15px;
  font-weight: bold;
  transition: color 0.5s ease;
}

.news-flex {
  display: flex;
  align-items: flex-start;
  float: left;
  box-sizing: border-box;
  width: 100%;
}

.news-body {
  /*display:flex;
  align-items:flex-start;
  float:left;
  @include box-sizing(border-box);*/
  width: 100%;
}

.news-flex img {
  width: 60px;
  flex-shrink: 0;
}

.news-date-s {
  float: right;
  color: #5f65d8;
}

.news-date-b {
  float: right;
  color: #3f47cc;
}

.news-date-t {
  float: right;
  color: #e5a900;
}

.news-date-f {
  float: right;
  color: #1c25c3;
}

/*banner buttony*/
/*CENNIK*/
.cennik-div-s {
  float: left;
  color: #ffffff;
  text-shadow: 0 1px 1px #535353;
  font-size: 24px;
  font-weight: bold;
  width: 100%;
  margin-bottom: 10px;
  box-sizing: border-box;
  line-height: 60px;
  border: 1px solid #5f65d8;
  background-color: #878ce5;
  padding-left: 20px;
  padding-right: 20px;
  transition: background-color linear 0.5s;
}

.cennik-div-s:hover {
  background-color: #5f65d8;
}

.cennik-div-t {
  float: left;
  color: #ffffff;
  text-shadow: 0 1px 1px #535353;
  font-size: 24px;
  font-weight: bold;
  width: 100%;
  margin-bottom: 10px;
  box-sizing: border-box;
  line-height: 60px;
  border: 1px solid #e5a900;
  background-color: #ffbd01;
  padding-left: 20px;
  padding-right: 20px;
  transition: background-color linear 0.5s;
}

.cennik-div-t:hover {
  background-color: #e5a900;
}

.cennik-div-b {
  float: left;
  color: #ffffff;
  text-shadow: 0 1px 1px #535353;
  font-size: 24px;
  font-weight: bold;
  width: 100%;
  margin-bottom: 10px;
  box-sizing: border-box;
  line-height: 60px;
  border: 1px solid #1c25c3;
  background-color: #3f47cc;
  padding-left: 20px;
  padding-right: 20px;
  transition: background-color linear 0.5s;
}

.cennik-div-b:hover {
  background-color: #121895;
}

.cennik-div-last {
  float: left;
  color: #ffffff;
  text-shadow: 0 1px 1px #535353;
  font-size: 24px;
  font-weight: bold;
  width: 100%;
  box-sizing: border-box;
  line-height: 60px;
  border: 1px solid #1c25c3;
  background-color: #3f47cc;
  padding-left: 20px;
  padding-right: 20px;
  transition: background-color linear 0.5s;
}

.cennik-div-last:hover {
  background-color: #121895;
}

.cennik-div-f {
  float: left;
  color: #ffffff;
  text-shadow: 0 1px 1px #535353;
  font-size: 24px;
  font-weight: bold;
  width: 100%;
  margin-bottom: 10px;
  box-sizing: border-box;
  line-height: 60px;
  border: 1px solid #121895;
  background-color: #1c25c3;
  padding-left: 20px;
  padding-right: 20px;
  transition: background-color linear 0.5s;
}

.cennik-div-f:hover {
  background-color: #1c25c3;
}

.cennik-p {
  line-height: 50px;
  border: 1px solid #1c25c3;
  width: 100%;
  padding-left: 30px;
  color: #878ce5;
  box-sizing: border-box;
}

.cennik p {
  margin: 8px;
}

.radio-top {
  margin: 0 auto;
}

.cennik-hl-title {
  float: left;
  width: 100%;
  font-weight: bold;
  text-align: center;
  line-height: 30px;
  border-bottom: 1px solid #c5cfd7;
  border-left: 1px solid #c5cfd7;
  border-right: 1px solid #c5cfd7;
  border-top: 2px solid #3f47cc;
  font-size: 15px;
  box-sizing: border-box;
}

.cennik-title {
  width: 100%;
  color: #ffffff;
  background-color: #3f47cc;
  float: left;
  padding-top: 5px;
  padding-bottom: 5px;
  box-sizing: border-box;
  cursor: pointer;
  border-right: 1px solid #121895;
  border-left: 1px solid #121895;
  border-top: 1px solid #121895;
  box-sizing: border-box;
  transition: background-color linear 0.5s;
}

.cennik-title-left {
  float: left;
  margin-left: 1%;
}

.cennik-title-right {
  float: right;
  margin-right: 1%;
}

.title-ju {
  width: 50px;
  float: left;
  text-align: left;
}

.title-pu {
  width: 50px;
  float: right;
  text-align: center;
}

.cennik-riadok {
  float: left;
  width: 100%;
  padding-bottom: 5px;
  padding-top: 5px;
  font-weight: bold;
  border-bottom: 1px solid #cacaca;
}

.cennik-riadok-left {
  float: left;
  margin-left: 1%;
}

.cennik-riadok-right {
  float: right;
  margin-right: 1%;
}

.riadok-ju {
  width: 60px;
  float: left;
  text-align: left;
}

.riadok-pu {
  width: 60px;
  float: right;
  text-align: left;
}

.cennik-box-disabled {
  width: 100%;
  float: left;
  font-size: 15px;
}

.cennik-box {
  background-color: #dfe1ff;
  width: 100%;
  float: left;
  font-size: 15px;
}

.cennik-box-left {
  float: left;
}

.cennik-box-right {
  float: right;
}

.cennik-100 {
  width: 100%;
  float: left;
}

.cennik-pu {
  padding: 2px;
  background-color: #dfe1ff;
}

.cennik-ju {
  padding: 2px;
  background-color: #dfe1ff;
}

.cennik-empty {
  padding: 2px;
  background-color: #dfe1ff;
}

/*................ESHOP - CENNIK...................*/
.text_eshop {
  padding: 5px;
  float: left;
  width: 787px;
  max-width: 100%;
}

.box_zaklad {
  float: left;
  width: 100%;
  box-sizing: border-box;
}

.box_padding {
  padding: 10px;
  float: left;
  width: 100%;
  box-sizing: border-box;
}

.h3podnadpis {
  width: 100%;
  padding-left: 5px;
  color: #ffffff;
  background-color: #3f47cc;
  float: left;
  box-sizing: border-box;
  cursor: pointer;
  border-right: 1px solid #121895;
  border-left: 1px solid #121895;
  border-top: 1px solid #121895;
  box-sizing: border-box;
  transition: background-color linear 0.5s;
}

.podnadpis {
  font-weight: bold;
  padding: 5px;
  font-size: 14px;
  width: 100%;
  color: #ffffff;
  background-color: #3f47cc;
  float: left;
  box-sizing: border-box;
  cursor: pointer;
  border-right: 1px solid #121895;
  border-left: 1px solid #121895;
  border-top: 1px solid #121895;
  box-sizing: border-box;
  transition: background-color linear 0.5s;
}

.navod-text {
  float: left;
  width: 100%;
  box-sizing: border-box;
  border-left: 1px solid #cacaca;
  border-right: 1px solid #cacaca;
}

.navod-titulok h3 {
  line-height: 30px;
  padding-left: 10px;
  font-size: 15px;
  color: #ffffff;
  background-color: #3f47cc;
  box-sizing: border-box;
  border-right: 1px solid #121895;
  border-left: 1px solid #121895;
  border-top: 1px solid #121895;
  box-sizing: border-box;
  transition: background-color linear 0.5s;
}

.navod-titulok h2 {
  line-height: 30px;
  border-top: 1px solid #c5cfd7;
  border-left: 1px solid #c5cfd7;
  border-right: 1px solid #c5cfd7;
  border-bottom: 2px solid #3f47cc;
  padding-left: 10px;
  font-size: 15px;
}

.navod-a a {
  background-position: center;
  display: block;
  font-weight: bold;
  font-size: 15px;
  color: #ffffff;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  text-align: center;
  width: 249px;
  text-decoration: none;
  border-bottom-style: solid;
  border-bottom-width: 4px;
  border-bottom-color: #ffff80;
  background-color: #1c25c3;
  padding-top: 2px;
  padding-bottom: 2px;
  margin-top: 10px;
  margin-bottom: 10px;
  margin-left: 15px;
  cursor: pointer;
  float: left;
}

.navod-obr {
  margin-top: 10px;
  margin-bottom: 10px;
  width: 100%;
}

.podlista {
  float: left;
  width: 100%;
}

.ciara_modra {
  background-color: #121895;
}

.odsek {
  padding: 5px;
  float: left;
  width: 100%;
  box-sizing: border-box;
  background-color: #f7f7f7;
}

.odsek1 {
  padding: 5px;
  float: left;
  width: 100%;
  box-sizing: border-box;
}

.left_e {
  float: left;
  padding-left: 1px;
  box-sizing: border-box;
}

.right_e {
  box-sizing: border-box;
  float: right;
  text-align: right;
  padding-right: 3px;
  font-weight: bold;
}

input[type=radio] {
  vertical-align: text-top;
}

input[type=checkbox] {
  vertical-align: text-top;
}

.left_0 {
  float: left;
  padding-left: 1px;
}

.right_0 {
  float: right;
  text-align: center;
  padding-right: 3px;
  font-weight: bold;
}

.right_zaklad {
  text-align: left;
  width: 20%;
  max-width: 100px;
  float: right;
}

.info {
  background-position: center;
  width: 38px;
  height: 18px;
  float: left;
  color: #ffffff;
  position: relative;
  background-image: url("img/info.png");
  background-repeat: no-repeat;
  cursor: pointer;
}

.info1 {
  background-position: center;
  width: 38px;
  height: 18px;
  float: right;
  color: #ffffff;
  position: relative;
  background-image: url("img/info.png");
  background-repeat: no-repeat;
  cursor: pointer;
}

.info1:hover .zobraz {
  border: 1px solid #777777;
  display: block;
  cursor: pointer;
}

.zobraz {
  width: 165px;
  padding: 3px;
  position: absolute;
  font-weight: normal;
  top: 0px;
  left: 40px;
  display: none;
  z-index: 10000;
  background-color: #eeeeee;
  color: #000000;
  text-align: left;
  -webkit-box-shadow: 4px 4px 5px rgba(50, 50, 50, 0.75);
  -moz-box-shadow: 4px 4px 5px rgba(50, 50, 50, 0.75);
  box-shadow: 4px 4px 5px rgba(50, 50, 50, 0.75);
}

.info:hover .zobraz {
  border: 1px solid #777777;
  display: block;
  cursor: pointer;
}

.hl_lista {
  padding-left: 7px;
  float: left;
  width: 100%;
  font-weight: bold;
  line-height: 30px;
  border-bottom: 1px solid #c5cfd7;
  border-left: 1px solid #c5cfd7;
  border-right: 1px solid #c5cfd7;
  border-top: 2px solid #3f47cc;
  font-size: 15px;
  box-sizing: border-box;
}

.hl_CB {
  float: left;
  background-position: center;
  background-image: url("images/grafika/lista_modra.png");
  background-repeat: repeat-x;
  color: #ffffff;
  height: 27px;
  line-height: 27px;
  font-size: 1em;
  font-weight: bold;
  width: 767px;
  padding-right: 5px;
}

.CB_eshop {
  padding-top: 2px;
  float: left;
}

.pod_lista {
  float: left;
  background-color: #dddddd;
  height: 22px;
  line-height: 22px;
  color: #000000;
  font-weight: bold;
  padding-left: 5px;
  float: left;
  width: 715px;
  margin-left: 50px;
  border-right-style: solid;
  border-left-style: solid;
  border-right-width: 1px;
  border-left-width: 1px;
  border-right-color: #777777;
  border-left-color: #777777;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #777777;
}

/*SERVIS CENNIK*/
/* -------SERVIS CENNIK-------- */
#pricing-table {
  margin: 0 auto;
  text-align: center;
  width: 100%;
}

#pricing-table .plan {
  background: #ffffff;
  border: 1px solid #dddddd;
  color: #333333;
  width: 33.33333%;
  float: left;
  box-sizing: border-box;
}

#pricing-table .header-plan {
  border: 1px solid #dddddd;
  color: #333333;
  width: 33.33333%;
  float: left;
  font-size: 14px;
  box-sizing: border-box;
}

.plan-title {
  font-size: 13px;
  font-weight: bold;
  height: 37px;
  padding: 10px 5px 10px 5px;
  background-color: #eeeeee;
  background-image: linear-gradient(#ffffff, #eeeeee);
}

#pricing-table h3 span {
  display: block;
  color: #777777;
  background: #ffffff;
  border: 5px solid #ffffff;
  height: 100px;
  width: 100px;
  margin: 10px auto -65px;
  box-shadow: 0 5px 20px #dddddd inset, 0 3px 0 #999999 inset;
}

/* --------------- */
.plan ul {
  margin: 0;
  padding: 0px;
  list-style: none;
}

.plan li {
  border-top: 1px solid #dddddd;
  height: 35px;
  line-height: 35px;
}

.header-plan ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.header-plan li {
  border-top: 1px solid #dddddd;
  background-color: #eeeeee;
  height: 35px;
  line-height: 35px;
  font-size: 14px;
}

.header-plan li.title-plan-cena {
  background-color: #b3b7ff;
}

.header-plan li.title-plan-akcia {
  background-color: #ef2f2f;
  color: #ffffff;
  font-weight: bold;
}

.plan-akcia {
  background-color: #fc8d8d;
  color: #000000;
  font-weight: bold;
}

.plan-cena {
  background-color: #dfe1ff;
}

.obal-ok-img {
  width: 22px;
  margin: 0 auto;
}

.ok-img {
  margin-top: 7px;
}

.ok-text {
  display: none;
}

#pricing-table .signup {
  position: relative;
  padding: 8px 20px;
  margin: 20px 0 0 0;
  color: #ffffff;
  font: bold 14px "Inter Variable", "Segoe UI", Tahoma, Arial, sans-serif;
  text-transform: uppercase;
  text-decoration: none;
  display: inline-block;
  background-color: #72ce3f;
  background-image: linear-gradient(#72ce3f, #62bc30);
  border-radius: 3px;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.3);
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.5), 0 2px 0 rgba(0, 0, 0, 0.7);
}

#pricing-table .signup:hover {
  background-color: #62bc30;
  background-image: linear-gradient(#62bc30, #72ce3f);
}

#pricing-table .signup:active, #pricing-table .signup:focus {
  background: #62bc30;
  top: 2px;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.7) inset;
}

/*pokladne eshop*/
.list {
  width: 100%;
  float: left;
}

.list-obr {
  text-align: center;
  margin: 0 auto;
  width: 100%;
}

.list-tit {
  width: 100%;
  padding-top: 5px;
  min-height: 50px;
  text-align: center;
  margin: 0 auto;
  font-weight: bold;
  font-size: 1em;
}

.list-akcia-text {
  width: 100%;
  font-size: 15px;
  font-weight: bold;
  color: #dd0000;
  text-align: center;
  float: left;
  padding-top: 3px;
  padding-bottom: 3px;
  margin-top: 3px;
  border-top: 1px solid #000000;
  border-bottom: 1px solid #000000;
}

.list-akcia {
  font-size: 15px;
  font-weight: bold;
  color: #dd0000;
}

.list-suma {
  padding: 2px;
  min-height: 50px;
  width: 100%;
  text-align: center;
  margin: 0 auto;
}

.list-bezdph {
  float: left;
  width: 100%;
  color: #00056b;
}

.list-sdph {
  float: left;
  width: 100%;
  display: none;
}

.bezdph-left {
  float: left;
  font-weight: bold;
}

.bezdph-right {
  float: right;
  font-weight: bold;
}

.sdph-left {
  float: left;
}

.sdph-right {
  float: right;
}

.ekasa-table {
  width: 100%;
  float: left;
  border: 1px solid #d9ddee;
  border-radius: 10px;
  overflow: hidden;
}

.ekasa-row-title {
  line-height: 30px;
  font-weight: bold;
  border-bottom: 2px solid #3f47cc;
  background-color: #e8ebf8;
  color: #141a3d;
  box-sizing: border-box;
  float: left;
  width: 100%;
}

.ekasa-row {
  float: left;
  width: 100%;
  box-sizing: border-box;
  border-bottom: 1px solid #d9ddee;
  background-color: #ffffff;
}

.ekasa-row:last-child {
  border-bottom: 0;
}

.ekasa-left-title {
  text-align: center;
  line-height: 30px;
  float: left;
  width: 30%;
  box-sizing: border-box;
}

.ekasa-right-title {
  text-align: center;
  line-height: 30px;
  width: 70%;
  float: left;
  box-sizing: border-box;
  border-left: 1px solid #d9ddee;
}

.ekasa-left {
  text-align: center;
  float: left;
  padding-top: 10%;
  width: 30%;
  color: #141a3d;
  font-weight: bold;
  box-sizing: border-box;
}

.ekasa-right {
  text-align: center;
  padding: 5px;
  width: 70%;
  float: left;
  box-sizing: border-box;
  background-color: #ffffff;
  border-left: 1px solid #d9ddee;
}

.ekasa-right a {
  color: #121895;
  font-weight: bold;
}

.ekasa-sol-obal {
  width: 33%;
  float: left;
  box-sizing: border-box;
}

.ekasa-sol-obr {
  width: 100%;
  position: relative;
}

.ekasa-sol-img {
  width: 100%;
}

.ekasa-sol-bt {
  position: absolute;
  bottom: 0;
  right: 0;
}

.ekasa-sol-tit {
  width: 100%;
  font-size: 13px;
  min-height: 30px;
}

.ekasa-sol-bt {
  background: #3f47cc; /* Old browsers */
  background: -moz-linear-gradient(top, #3f47cc 0%, #5f65d8 50%, #5f65d8 51%, #1c25c3 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #3f47cc 0%, #5f65d8 50%, #5f65d8 51%, #1c25c3 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #3f47cc 0%, #5f65d8 50%, #5f65d8 51%, #1c25c3 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="$brand-500", endColorstr="$brand-600",GradientType=0 ); /* IE6-9 */
  padding: 5px;
  border: 1px solid #1c25c3;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  color: #f4f5fd;
  cursor: pointer;
  min-width: 70px;
  font-weight: bold;
}

.ekasa-sol-bt:hover {
  background: #1c25c3; /* Old browsers */
  background: -moz-linear-gradient(top, #1c25c3 0%, #5f65d8 49%, #5f65d8 50%, #3f47cc 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #1c25c3 0%, #5f65d8 49%, #5f65d8 50%, #3f47cc 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #1c25c3 0%, #5f65d8 49%, #5f65d8 50%, #3f47cc 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="$brand-600", endColorstr="$brand-500",GradientType=0 ); /* IE6-9 */
}

.ekasa-sol-nonbt {
  position: absolute;
  bottom: 0;
  right: 0;
  background: #ef2f2f; /* Old browsers */
  background: -moz-linear-gradient(top, #ef2f2f 0%, #ef2f2f 50%, #ef2f2f 51%, #dd0000 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #ef2f2f 0%, #ef2f2f 50%, #ef2f2f 51%, #dd0000 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #ef2f2f 0%, #ef2f2f 50%, #ef2f2f 51%, #dd0000 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  padding: 5px;
  border: 1px solid #b90000;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  color: #f4f5fd;
  cursor: pointer;
  min-width: 70px;
  font-weight: bold;
}

.ekasa-title-yellow {
  line-height: 30px;
  font-weight: bold;
  background-color: #fff473;
  border: 1px solid #d5cb56;
  box-sizing: border-box;
  padding-left: 10px;
}

.ekasa-title-red {
  line-height: 30px;
  font-weight: bold;
  background-color: #fc8d8d;
  border: 1px solid #ef2f2f;
  box-sizing: border-box;
  padding-left: 10px;
}

.ekasa-title-green {
  line-height: 30px;
  font-weight: bold;
  background-color: #ffbd01;
  border: 1px solid #ffc92e;
  box-sizing: border-box;
  padding-left: 10px;
}

.ekasa-obr {
  margin: 0 auto;
}

.det-img {
  float: left;
}

.det-info-obal {
  float: right;
  margin-right: 3px;
  margin-top: 10px;
  margin-bottom: 10px;
  width: 320px;
}

.det-kosik-obal {
  min-width: 320px;
  float: right;
  margin-right: 3px;
}

.det-kosik {
  float: left;
  width: 100%;
  line-height: 30px;
  font-weight: bold;
}

.det-kosik-text {
  float: right;
  margin-right: 10px;
}

.det-info {
  color: #535353;
  float: right;
  width: 100%;
  text-align: right;
}

.det-suma {
  width: 320px;
  float: right;
  margin-right: 3px;
}

.det-bt {
  background: #3f47cc; /* Old browsers */
  padding: 6px 15px 6px 15px;
  border: 1px solid #5f65d8;
  color: #f4f5fd;
  cursor: pointer;
  min-width: 70px;
  font-weight: bold;
  box-sizing: border-box;
  color: #ffffff;
  float: right;
  cursor: pointer;
  font-weight: bold;
}

.det-bt:hover {
  background: #121895; /* Old browsers */
}

.det-bt-red {
  background: #ef2f2f; /* Old browsers */
  padding: 6px 15px 6px 15px;
  border: 1px solid #ef2f2f;
  color: #f4f5fd;
  cursor: pointer;
  min-width: 70px;
  font-weight: bold;
  box-sizing: border-box;
  color: #ffffff;
  float: right;
  cursor: pointer;
  font-weight: bold;
}

.det-bt-red:hover {
  background: #dd0000; /* Old browsers */
}

.det-html {
  padding: 5px;
  float: left;
}

.det-bezdph {
  font-size: 16px;
  float: left;
  width: 100%;
  line-height: 35px;
  color: #3f47cc;
  font-weight: bold;
  text-align: right;
}

.det-akcia {
  float: left;
  width: 100%;
  line-height: 30px;
  color: #dd0000;
  font-weight: bold;
  text-align: right;
}

.det-akcia-text {
  float: left;
  line-height: 40px;
  width: 100%;
  color: #dd0000;
  font-weight: bold;
  text-align: right;
}

.det-sdph {
  float: left;
  height: 40px;
  width: 100%;
  line-height: 40px;
  color: #dd0000;
  text-align: right;
}

.det-popis h3 {
  background-color: #ffffff;
}

.det-popis {
  float: left;
  width: 100%;
}

.det-popis {
  float: left;
  width: 100%;
  box-sizing: border-box;
  padding: 5px;
}

.det-param {
  float: left;
  width: 100%;
  display: none;
}

/*OBJEDNAVKA FORMULÁR*/
.obj_sucet {
  width: 100%;
  float: left;
  background-color: #ffffff;
  border: 1px solid #cacaca;
  box-sizing: border-box;
  font-size: 15px;
  margin-bottom: 10px;
}

.tabulka_cena {
  float: left;
  width: 217px;
  padding: 5px;
}

.suma_row {
  width: 100%;
  float: left;
}

.suma_div {
  float: left;
  width: 100%;
  padding: 10px;
  box-sizing: border-box;
  border-bottom: 1px solid #cacaca;
}

.suma_ciara {
  float: left;
  width: 100%;
}

.suma_nadpis {
  float: left;
}

.nadpis_cena {
  float: left;
}

.blok_obj {
  float: left;
  width: 100%;
  padding: 10px;
  box-sizing: border-box;
}

.blok_text {
  float: left;
  width: 100%;
}

.left_obj {
  width: 100%;
  float: left;
}

.right_obj {
  width: 100%;
  float: left;
  margin-top: 6px;
}

.nadpis_objednavka {
  float: left;
  font-size: 1.1em;
  color: #000000;
  font-weight: bold;
  width: 98%;
  margin-bottom: 10px;
}

.TB_objednavka {
  float: left;
  margin-left: 5px;
  height: 20px;
  width: 100%;
}

.TB_poznamka {
  float: left;
  margin-top: 2px;
  height: 70px;
  width: 100%;
}

.suma {
  float: right;
  padding-right: 13px;
  font-size: 1.1em;
}

.cena {
  border-style: solid;
  border-width: 5px 4px 3px 3px;
  border-color: #c0c0c0;
  background: rgb(242, 246, 248); /* Old browsers */
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2YyZjZmOCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjQ5JSIgc3RvcC1jb2xvcj0iI2Q4ZTFlNyIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNiNWM2ZDAiIHN0b3Atb3BhY2l0eT0iMSIvPgogICAgPHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjZTBlZmY5IiBzdG9wLW9wYWNpdHk9IjEiLz4KICA8L2xpbmVhckdyYWRpZW50PgogIDxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIGZpbGw9InVybCgjZ3JhZC11Y2dnLWdlbmVyYXRlZCkiIC8+Cjwvc3ZnPg==);
  background: -moz-linear-gradient(top, rgb(242, 246, 248) 0%, rgb(216, 225, 231) 49%, rgb(181, 198, 208) 100%, rgb(224, 239, 249) 100%); /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgb(242, 246, 248)), color-stop(49%, rgb(216, 225, 231)), color-stop(100%, rgb(181, 198, 208)), color-stop(100%, rgb(224, 239, 249))); /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, rgb(242, 246, 248) 0%, rgb(216, 225, 231) 49%, rgb(181, 198, 208) 100%, rgb(224, 239, 249) 100%); /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, rgb(242, 246, 248) 0%, rgb(216, 225, 231) 49%, rgb(181, 198, 208) 100%, rgb(224, 239, 249) 100%); /* Opera 11.10+ */
  background: -ms-linear-gradient(top, rgb(242, 246, 248) 0%, rgb(216, 225, 231) 49%, rgb(181, 198, 208) 100%, rgb(224, 239, 249) 100%); /* IE10+ */
  background: linear-gradient(to bottom, rgb(242, 246, 248) 0%, rgb(216, 225, 231) 49%, rgb(181, 198, 208) 100%, rgb(224, 239, 249) 100%); /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="$gray-50", endColorstr="$brand-100",GradientType=0 ); /* IE6-8 */
}

.bt_obj {
  width: 100%;
  color: #ffffff;
  font-weight: bold;
  margin-top: 5px;
  border: 3px solid #1c25c3;
  -webkit-box-shadow: #777777 0px 2px 2px;
  -moz-box-shadow: #777777 0px 2px 2px;
  box-shadow: #777777 0px 2px 2px;
  font-size: 0.9em;
  font-family: "Inter Variable", "Segoe UI", Tahoma, Arial, sans-serif;
  padding-top: 5px;
  padding-bottom: 5px;
  text-decoration: none;
  display: inline-block;
  text-shadow: 2px 2px 0 rgba(0, 0, 0, 0.3);
  background-color: #3f47cc;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#3f47cc), to(#121895));
  background-image: -webkit-linear-gradient(top, #3f47cc, #121895);
  background-image: -moz-linear-gradient(top, #3f47cc, #121895);
  background-image: -ms-linear-gradient(top, #3f47cc, #121895);
  background-image: -o-linear-gradient(top, #3f47cc, #121895);
  background-image: linear-gradient(to bottom, #3f47cc, #121895);
  filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr=$brand-500, endColorstr=$brand-700);
  cursor: pointer;
}

.bt_obj:hover {
  border: 3px solid #1c25c3;
  background-color: #1c25c3;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#1c25c3), to(#00056b));
  background-image: -webkit-linear-gradient(top, #1c25c3, #00056b);
  background-image: -moz-linear-gradient(top, #1c25c3, #00056b);
  background-image: -ms-linear-gradient(top, #1c25c3, #00056b);
  background-image: -o-linear-gradient(top, #1c25c3, #00056b);
  background-image: linear-gradient(to bottom, #1c25c3, #00056b);
  filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr=$brand-600, endColorstr=$brand-800);
}

.TB_user {
  border: 2px ridge rgba(255, 0, 0, 0.26);
  border-radius: 5px;
  background: #f7f7f7;
  width: 100%;
  float: left;
  height: 35px;
  padding-left: 30px;
  line-height: 35px;
  margin-bottom: 8px;
  background-position: left;
  background-repeat: no-repeat;
  color: #999999;
  font-family: "Inter Variable", "Segoe UI", Tahoma, Arial, sans-serif;
  outline: none;
  font-size: 16px;
  box-sizing: border-box;
  background-image: url(img/icons/name.png);
}

.WTB_user {
  border: 2px ridge rgba(255, 0, 0, 0.11);
  border-radius: 5px;
  background: #f7f7f7;
  width: 100%;
  float: left;
  height: 35px;
  padding-left: 30px;
  line-height: 35px;
  margin-bottom: 8px;
  background-position: left;
  background-repeat: no-repeat;
  color: #999999;
  font-family: "Inter Variable", "Segoe UI", Tahoma, Arial, sans-serif;
  outline: none;
  font-size: 16px;
  box-sizing: border-box;
  background-image: url(img/icons/name.png);
}

.TB_email {
  border: 2px ridge rgba(255, 0, 0, 0.26);
  border-radius: 5px;
  background: #f7f7f7;
  width: 100%;
  float: left;
  height: 35px;
  padding-left: 30px;
  line-height: 35px;
  margin-bottom: 8px;
  background-position: left;
  background-repeat: no-repeat;
  color: #999999;
  font-family: "Inter Variable", "Segoe UI", Tahoma, Arial, sans-serif;
  outline: none;
  font-size: 16px;
  box-sizing: border-box;
  background-image: url(img/icons/email.png);
}

.WTB_email {
  border: 2px ridge rgba(255, 0, 0, 0.11);
  border-radius: 5px;
  background: #f7f7f7;
  width: 100%;
  float: left;
  height: 35px;
  padding-left: 30px;
  line-height: 35px;
  margin-bottom: 8px;
  background-position: left;
  background-repeat: no-repeat;
  color: #999999;
  font-family: "Inter Variable", "Segoe UI", Tahoma, Arial, sans-serif;
  outline: none;
  font-size: 16px;
  box-sizing: border-box;
  background-position: left;
  background-repeat: no-repeat;
  background-image: url(img/icons/email.png);
}

.TB_send {
  border: 2px ridge rgba(255, 0, 0, 0.26);
  border-radius: 5px;
  background: #f7f7f7;
  width: 100%;
  float: left;
  padding-left: 30px;
  padding-top: 8px;
  margin-bottom: 8px;
  color: #999999;
  font-family: "Inter Variable", "Segoe UI", Tahoma, Arial, sans-serif;
  outline: none;
  font-size: 16px;
  box-sizing: border-box;
  background-image: url(img/icons/comment.png);
  background-position: left top;
  background-repeat: no-repeat;
}

.WTB_send {
  border: 2px ridge rgba(255, 0, 0, 0.11);
  border-radius: 5px;
  background: #f7f7f7;
  width: 100%;
  float: left;
  padding-left: 30px;
  margin-bottom: 8px;
  padding-top: 8px;
  background-position: left;
  background-repeat: no-repeat;
  color: #999999;
  font-family: "Inter Variable", "Segoe UI", Tahoma, Arial, sans-serif;
  outline: none;
  font-size: 16px;
  box-sizing: border-box;
  background-position: left top;
  background-repeat: no-repeat;
  background-image: url(img/icons/comment.png);
}

.TB_tel {
  border: 2px ridge rgba(255, 0, 0, 0.26);
  border-radius: 5px;
  background: #f7f7f7;
  width: 100%;
  float: left;
  height: 35px;
  padding-left: 30px;
  line-height: 35px;
  margin-bottom: 8px;
  background-position: left;
  background-repeat: no-repeat;
  color: #999999;
  font-family: "Inter Variable", "Segoe UI", Tahoma, Arial, sans-serif;
  outline: none;
  font-size: 16px;
  box-sizing: border-box;
  background-image: url(img/icons/phone.png);
}

.WTB_tel {
  border: 2px ridge rgba(255, 0, 0, 0.11);
  border-radius: 5px;
  background: #f7f7f7;
  width: 100%;
  float: left;
  height: 35px;
  padding-left: 30px;
  line-height: 35px;
  margin-bottom: 8px;
  background-position: left;
  background-repeat: no-repeat;
  color: #999999;
  font-family: "Inter Variable", "Segoe UI", Tahoma, Arial, sans-serif;
  outline: none;
  font-size: 16px;
  box-sizing: border-box;
  background-image: url(img/icons/phone.png);
}

.button_kontakt {
  font-weight: bold;
  float: left;
  outline: none;
  width: 100%;
  cursor: pointer;
  padding-top: 5px;
  padding-bottom: 5px;
  border-radius: 5px;
  background-color: #3f47cc;
  border-color: rgba(0, 0, 0, 0.3);
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.5);
  color: #ffffff;
  transition: all 0.3s;
}

.button_kontakt:hover {
  background-color: #121895;
  border-color: rgba(0, 0, 0, 0.5);
}

.button_eset {
  font-weight: bold;
  float: left;
  outline: none;
  width: 100%;
  cursor: pointer;
  padding-top: 5px;
  padding-bottom: 5px;
  border-radius: 5px;
  background-color: #00a6b4;
  border-color: rgba(0, 0, 0, 0.3);
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.5);
  color: #ffffff;
  transition: all 0.3s;
  max-width: 246px;
}

.button_eset:hover {
  background-color: #008590;
  border-color: rgba(0, 0, 0, 0.5);
}

.kontakt-form {
  width: 100%;
  float: left;
}

.kontakt-form p {
  float: left;
  text-align: center;
  color: #000000;
  font-size: 16px;
}

.kontakt-text {
  width: 100%;
  float: left;
}

.kontakt-pol {
  float: left;
  width: 100%;
  padding: 5px;
  box-sizing: border-box;
}

.kontakt-pol a {
  float: left;
  color: #3f47cc;
  text-align: center;
  width: 100%;
}

.kontakt-pol a:hover {
  color: #121895;
}

.mapa-frame {
  width: 100%;
}

/*AKTUALIZÁCIA*/
.tab-ekasa tr.tr-ekasa {
  cursor: pointer;
}

.aktual_a a {
  background-position: center;
  display: block;
  font-weight: bold;
  font-size: 15px;
  color: #ffffff;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  text-align: center;
  width: 249px;
  text-decoration: none;
  border-bottom-style: solid;
  border-bottom-width: 4px;
  border-bottom-color: #ffff80;
  background-color: #1c25c3;
  padding-top: 2px;
  padding-bottom: 2px;
  margin-top: 10px;
  margin-bottom: 10px;
  margin-left: 15px;
  cursor: pointer;
}

.aktual_a a:hover {
  background-color: #1c25c3;
  transition: all linear 0.5s;
}

.actual a {
  color: #000000;
  font-weight: bold;
  text-decoration: underline;
}

/*CLANKY*/
.content li {
  font-size: 12px;
}

.content ul li ul li {
  font-size: 1em;
}

.aktual-text {
  float: left;
  padding: 10px;
  width: 100%;
  box-sizing: border-box;
  background-color: #ffffff;
}

.aktual-text h3 {
  padding: 10px;
}

.article-text-nopadd {
  float: left;
  width: 100%;
  box-sizing: border-box;
  border-left: 1px solid #cacaca;
  border-bottom: 1px solid #cacaca;
  border-right: 1px solid #cacaca;
  background-color: #ffffff;
  margin-bottom: 10px;
}

.article-text-nopadd h3 {
  padding: 5px;
}

.article-text-nopadd a {
  color: #3f47cc;
}

.article-text-nopadd a:hover {
  color: #121895;
}

.article-text {
  float: left;
  padding: 10px;
  width: 100%;
  box-sizing: border-box;
  background-color: #ffffff;
  margin-bottom: 10px;
  text-align: justify;
}

.manual-text {
  float: left;
  padding: 10px;
  width: 100%;
  box-sizing: border-box;
  background-color: #ffffff;
  margin-bottom: 10px;
  text-align: justify;
}
.manual-text img {
  max-width: 40% !important;
  cursor: zoom-in;
  transition: max-width ease-out 0.5s;
}
.manual-text img:hover {
  max-width: 100% !important;
  transition: max-width ease-in 0.5s;
}

.ekasa-vyrobca {
  width: 33.33333%;
  float: left;
  box-sizing: border-box;
  padding: 20px;
}

.ekasa-vyrobca-full {
  width: 100%;
  float: left;
  box-sizing: border-box;
  cursor: pointer;
  border: 2px solid #c0c0c0;
  margin-top: 5px;
  padding: 10px;
  border-radius: 50px;
  box-shadow: 1px 1px 15px 1px #cacaca;
  transition: all linear 0.5s;
}
.ekasa-vyrobca-full:hover {
  border: 2px solid #1c25c3;
}

.article-text h3, h4, h5 {
  padding: 5px;
}

.article-text a {
  color: #3f47cc;
}

.article-text a:hover {
  color: #121895;
}

body.help_body {
  margin: 0 auto;
  width: 100%;
  font-family: "Inter Variable", "Segoe UI", Tahoma, Arial, sans-serif;
  background-color: #ffffff;
  background-image: none;
  font-size: 12px;
}

.floatleft {
  float: left;
}

.floatright {
  float: right;
}

.float {
  float: left;
  width: 100%;
}

.logo {
  padding: 10px 0px 0px 0px;
  width: 100%;
  text-align: center;
  float: none;
}

.img-ref {
  float: left;
  padding: 18px;
  box-sizing: border-box;
  transition: box-shadow 0.3s ease-in-out;
  border: 1px solid #eeeeee;
}

.img-ref:hover {
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
}

.bg-referencie {
  width: 100%;
  float: left;
  height: 120px;
  background-color: #ffffff;
}

/*referencie*/
@media (min-width: 800px) {
  .logo {
    float: left;
  }
}
@media (max-width: 800px) {
  .android {
    display: block;
  }
  .desktop {
    display: none;
  }
}
@media screen and (max-width: 1240px) {
  .velky_obal_wraper {
    width: 95%;
  }
}
@media (max-width: 991.98px) {
  .article-text img {
    max-width: 100% !important;
    cursor: zoom-in;
    transition: none;
  }
  .article-text img:hover {
    max-width: 100% !important;
    transition: none;
  }
}
@media (max-width: 799px) {
  .logo {
    padding: 10px;
  }
  #header {
    padding: 0px;
  }
  .header-right {
    float: none;
    margin: 0 auto;
    width: 100%;
  }
}
/*@media (max-width: 1220px) {
}
*/
@media (max-width: 450px) {
  .TB {
    width: 100% !important;
  }
  .regfir .reg_r .reg_pop {
    text-align: center !important;
    width: 100% !important;
    float: left !important;
  }
  .regfir .reg_r {
    line-height: 30px;
    width: 100% !important;
    float: left !important;
    max-width: 100%;
  }
}
.TB {
  padding: 8px;
  font-size: 13px;
  background-color: #ffffff;
  color: #333333;
  border: 1px solid #cacaca;
  border-radius: 3px;
  box-shadow: 1px 1px 1px 0px rgba(138, 138, 138, 0.47);
  transition: border linear 0.5s;
  box-sizing: border-box;
  font-family: "Inter Variable", "Segoe UI", Tahoma, Arial, sans-serif;
}

.regfir {
  font-size: 15px;
  font-weight: bold;
  float: left;
  width: 100%;
}

.regfir p {
  padding-left: 25px;
}

.regfir .reg_p {
  padding: 7px;
  margin-bottom: 10px;
  text-align: center;
  color: #ffffff;
  font-weight: bold;
  float: left;
  background-color: #1c25c3;
  box-sizing: border-box;
  width: 100%;
  border-radius: 5px;
  background: #1c25c3;
  background: linear-gradient(to bottom, #1c25c3 0%, #1c25c3 100%);
  border: 1px solid #121895;
}

.obal-objednavka {
  float: left;
  width: 33.333333%;
}
.obal-objednavka a {
  float: left;
  padding: 10px;
  text-align: center;
  opacity: 0.8;
  font-size: 18px;
  font-weight: bold;
  text-decoration: none;
  color: #1c25c3;
  border-radius: 5px;
  transition: all linear 0.5s;
  border: 1px solid #1c25c3;
}
.obal-objednavka a:hover {
  color: #121895;
  border: 1px solid #121895;
  opacity: 1;
}

.objednavka-text {
  width: 100%;
  line-height: 35px;
  text-align: center;
}

.regfir .reg_r {
  line-height: 30px;
  width: 550px;
  margin: 5px auto 5px auto;
}

.regfir .reg_r .reg_pop {
  text-align: right;
  width: 150px;
  float: left;
}

.kosik-bt {
  padding: 10px;
  border-radius: 5px;
  background: #1c25c3;
  background: linear-gradient(to bottom, #1c25c3 0%, #1c25c3 100%);
  border: 1px solid #121895;
  color: #f4f5fd;
  cursor: pointer;
  width: 100%;
  max-width: 241px;
  font-weight: bold;
}

.kosik-bt:hover {
  background: #1c25c3;
  background: linear-gradient(to bottom, #1c25c3 0%, #1c25c3 100%);
}

.kosik_grid a {
  color: #535353;
}

.kosik_grid a:hover {
  color: black;
}

.kosik_header {
  color: #535353;
  background-color: #f7f7f7;
  border-bottom: 1px solid #dddddd;
  border-top: 1px solid #dddddd;
}

.pn_kod_kosik {
  margin: 10px auto;
  width: 550px;
  display: none;
}

.kosik_r1 {
  border-top: 1px solid #dddddd;
  border-bottom: 1px solid #dddddd;
}

.kosik_r2 {
  border-top: 1px solid #c0c0c0;
}

.kosik_r_edit {
  background-color: #dfe1ff;
  color: #000000;
  height: 40px;
}

.kosik_footer {
  height: 30px;
  color: #000000;
  background-image: url(img/login_textbox_bg.jpg);
  background-repeat: repeat-x;
  border-bottom: 1px solid #dddddd;
}

.obalsuma {
  line-height: 35px;
  float: left;
  width: 100%;
  margin-bottom: 10px;
}

.kosik-suma {
  margin: 10px auto 10px auto;
  padding: 10px;
  line-height: 35px;
  width: 280px;
  box-sizing: border-box;
  text-align: right;
  border-radius: 50px;
  box-shadow: 1px 1px 15px 1px #cacaca;
  transition: all linear 0.5s;
}

.accordionHeader {
  width: 100%;
  box-sizing: border-box;
  background: #dd0000;
  background: linear-gradient(to bottom, #dd0000 0%, #b90000 100%);
  border-bottom: 1px solid #1c25c3;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  cursor: pointer;
  padding: 5px;
  border-radius: 5px;
}

.accordionHeaderSelected {
  width: 100%;
  box-sizing: border-box;
  background: #b90000;
  background: linear-gradient(to bottom, #b90000 0%, #dd0000 100%);
  border-bottom: 1px solid #1c25c3;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  cursor: pointer;
  padding: 5px;
  border-radius: 5px;
}

.buyheadtitle {
  width: 100%;
}

.kosik-suma-text {
  float: left;
  font-weight: bold;
  padding-left: 3px;
}

.cb-obj {
  float: left;
  width: 33.33333%;
  float: left;
  text-align: center;
  padding: 20px;
  box-sizing: border-box;
}

.tb-obj {
  line-height: 35px;
  width: 35px;
  text-align: center;
  border-radius: 5px;
  border: 1px solid #777777;
  /*    &:focus {
      outline: 1px solid $base;
  }*/
}

.text-obj {
  padding: 10px;
  box-sizing: border-box;
  width: 100%;
  float: left;
  text-align: center;
}

.wtb-obj {
  line-height: 35px;
  width: 35px;
  text-align: center;
  border-radius: 5px;
  color: #777777;
  border: 1px solid #777777;
}

/*efaktura*/
.ef-page {
  --ef-ink: #141a3d;
  --ef-body: #2c3150;
  --ef-muted: #5c6285;
  --ef-accent: #3f47cc;
  --ef-accent-strong: #1c25c3;
  --ef-hairline: #d9ddee;
  --ef-tint: #e8ebf8;
  background-color: #ffffff;
  color: var(--ef-body);
  font-family: "Inter Variable", "Segoe UI", Tahoma, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

.ef-page * {
  box-sizing: border-box;
}

.ef-wrap {
  max-width: 820px;
  margin: 0 auto;
  padding: 0 20px;
}

/* HERO */
.ef-hero {
  background: var(--ef-tint);
  border-bottom: 1px solid var(--ef-hairline);
  padding: 34px 0 30px;
  margin: 0 0 4px;
}

.ef-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ef-accent-strong);
  margin: 0 0 14px;
}

.ef-eyebrow::before {
  content: "";
  width: 22px;
  height: 2px;
  background: var(--ef-accent);
  display: inline-block;
}

.ef-page h1 {
  color: var(--ef-ink);
  font-weight: 700;
  font-size: clamp(20px, 2vw, 23px);
  line-height: 1.15;
  letter-spacing: -0.01em;
  margin: 0 0 14px;
}

.ef-lead {
  font-size: 16px;
  line-height: 1.55;
  color: var(--ef-body);
  margin: 0;
}

.ef-lead .ef-law {
  color: var(--ef-ink);
  font-weight: 600;
  white-space: nowrap;
}

/* SECTIONS */
.ef-sec {
  padding: 28px 0;
  border-bottom: 1px solid var(--ef-hairline);
}

.ef-sec:last-of-type {
  border-bottom: 0;
}

.ef-page h2 {
  color: var(--ef-ink);
  font-weight: 700;
  font-size: clamp(19px, 2.6vw, 23px);
  line-height: 1.25;
  letter-spacing: -0.005em;
  margin: 0 0 10px;
}

.ef-page .ef-sec p,
.ef-page .ef-lead {
  margin-top: 0;
}

.ef-sec p {
  margin: 0 0 11px;
}

.ef-sec p:last-child {
  margin-bottom: 0;
}

.ef-key {
  color: var(--ef-ink);
  font-weight: 600;
}

/* STEPS */
.ef-steps {
  list-style: none;
  counter-reset: efs;
  margin: 16px 0 0;
  padding: 0;
}

.ef-steps li {
  counter-increment: efs;
  position: relative;
  padding: 0 0 15px 44px;
}

.ef-steps li:last-child {
  padding-bottom: 0;
}

.ef-steps li::before {
  content: counter(efs);
  position: absolute;
  left: 0;
  top: -1px;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--ef-accent);
  color: #ffffff;
  font-size: 15px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* CTA */
.ef-cta {
  margin-top: 24px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}

.ef-btn {
  display: inline-block;
  background: var(--ef-accent);
  color: #ffffff !important;
  text-decoration: none;
  font-weight: 600;
  font-size: 15px;
  padding: 10px 20px;
  border-radius: 6px;
  transition: background 0.18s ease;
}

.ef-btn:hover,
.ef-btn:focus-visible {
  background: var(--ef-accent-strong);
}

.ef-note {
  color: var(--ef-muted);
  font-size: 14px;
}

.ef-page a {
  color: var(--ef-accent-strong);
}

.ef-page a:focus-visible,
.ef-steps li:focus-visible {
  outline: 2px solid var(--ef-accent);
  outline-offset: 3px;
  border-radius: 4px;
}

/* load-in */
.ef-fade {
  opacity: 0;
  transform: translateY(8px);
  animation: efRise 0.45s ease forwards;
}

.ef-fade.ef-d1 {
  animation-delay: 0.04s;
}

.ef-fade.ef-d2 {
  animation-delay: 0.08s;
}

@keyframes efRise {
  to {
    opacity: 1;
    transform: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ef-fade {
    animation: none;
    opacity: 1;
    transform: none;
  }
}
@media (max-width: 560px) {
  .ef-wrap {
    padding: 0 16px;
  }
  .ef-hero {
    padding: 28px 0 24px;
  }
  .ef-sec {
    padding: 24px 0;
  }
  .ef-lead {
    font-size: 15px;
  }
  .ef-page h2 {
    font-size: 20px;
  }
  .ef-steps li {
    padding-left: 40px;
  }
  .ef-cta {
    align-items: flex-start;
    flex-direction: column;
  }
}
/*efaktura cennik*/
.ef-wrap--wide {
  max-width: 1000px;
}

.ef-btn--ghost {
  background: transparent;
  color: var(--ef-accent-strong) !important;
  box-shadow: inset 0 0 0 1.5px var(--ef-accent);
}

.ef-btn--ghost:hover,
.ef-btn--ghost:focus-visible {
  background: var(--ef-tint);
}

.ef-alert {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px 20px;
  margin-top: 22px;
  padding: 14px 18px;
  background: #ffffff;
  border: 1px solid var(--ef-hairline);
  border-left: 4px solid var(--ef-accent);
  border-radius: 6px;
}

.ef-alert p {
  flex: 1 1 320px;
  margin: 0;
}

/* TABS */
.ef-tabs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin: 28px 0 0;
}

.ef-tab {
  -webkit-appearance: none;
  appearance: none;
  display: flex;
  align-items: flex-start;
  gap: 14px;
  width: 100%;
  margin: 0;
  padding: 16px 18px;
  font: inherit;
  text-align: left;
  color: var(--ef-body);
  background: #ffffff;
  border: 1px solid var(--ef-hairline);
  border-radius: 10px;
  cursor: pointer;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.ef-tab:hover {
  border-color: #b3b7ff;
}

.ef-tab:focus-visible {
  outline: 2px solid var(--ef-accent);
  outline-offset: 3px;
}

.ef-tab[aria-selected=true] {
  background: #f4f5fd;
  border-color: var(--ef-accent);
  box-shadow: 0 0 0 1px var(--ef-accent);
}

.ef-tab-num {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--ef-tint);
  color: var(--ef-accent-strong);
  font-size: 14px;
  font-weight: 700;
}

.ef-tab[aria-selected=true] .ef-tab-num {
  background: var(--ef-accent);
  color: #ffffff;
}

.ef-tab-title {
  display: block;
  color: var(--ef-ink);
  font-size: 17px;
  font-weight: 700;
  line-height: 1.25;
}

.ef-tab-sub {
  display: block;
  margin-top: 3px;
  color: var(--ef-muted);
  font-size: 13px;
}

.ef-badge {
  display: inline-block;
  margin-left: 6px;
  padding: 2px 8px;
  border-radius: 20px;
  background: #fff1d1;
  color: #7a4f00;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  vertical-align: 2px;
}

.ef-panel[hidden] {
  display: none;
}

.ef-page h3 {
  color: var(--ef-ink);
  font-size: 17px;
  font-weight: 700;
  line-height: 1.3;
  margin: 0 0 12px;
}

.ef-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 28px;
  align-items: start;
}

/* CALCULATOR */
.ef-calc {
  padding: 22px;
  border-radius: 12px;
  background: var(--ef-accent);
  color: #ffffff;
}

.ef-page .ef-calc h3 {
  color: #ffffff;
  margin-bottom: 2px;
}

.ef-calc-label {
  display: block;
  margin: 16px 0 8px;
  color: rgba(255, 255, 255, 0.82);
  font-size: 13px;
}

.ef-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.ef-pill {
  position: relative;
  margin: 0;
}

.ef-pill input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
}

.ef-pill span {
  display: inline-block;
  min-width: 54px;
  padding: 6px 10px;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.15);
  color: #ffffff;
  font-weight: 600;
  text-align: center;
  cursor: pointer;
  transition: background 0.15s ease;
}

.ef-pill span:hover {
  background: rgba(255, 255, 255, 0.28);
}

.ef-pill input:checked + span {
  background: #ffffff;
  color: var(--ef-accent-strong);
}

.ef-pill input:focus-visible + span {
  outline: 2px solid #ffffff;
  outline-offset: 2px;
}

.ef-price {
  margin: 20px 0 0;
  font-size: 40px;
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -0.02em;
}

.ef-page .ef-calc .ef-price {
  margin-top: 24px;
}

.ef-price small {
  color: rgba(255, 255, 255, 0.82);
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0;
}

.ef-calc-rows {
  list-style: none;
  margin: 14px 0 0;
  padding: 12px 0 0;
  border-top: 1px solid rgba(255, 255, 255, 0.25);
}

.ef-calc-rows li {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 3px 0;
}

.ef-calc-rows li[hidden] {
  display: none;
}

.ef-calc-rows strong {
  color: #ffffff;
  white-space: nowrap;
}

.ef-calc .ef-cta {
  margin-top: 18px;
}

.ef-calc .ef-btn {
  background: #ffffff;
  color: var(--ef-accent-strong) !important;
}

.ef-calc .ef-btn:hover,
.ef-calc .ef-btn:focus-visible {
  background: var(--ef-tint);
}

.ef-calc .ef-btn--off,
.ef-calc .ef-btn--off:hover {
  background: rgba(255, 255, 255, 0.22);
  color: #ffffff !important;
  cursor: default;
}

.ef-calc .ef-note {
  color: rgba(255, 255, 255, 0.85);
  font-size: 13px;
}

/* LISTS */
.ef-feat {
  list-style: none;
  margin: 0;
  padding: 0;
}

.ef-feat li {
  position: relative;
  padding: 0 0 9px 28px;
}

.ef-feat li::before {
  content: "";
  position: absolute;
  left: 3px;
  top: 4px;
  width: 11px;
  height: 6px;
  border-left: 2px solid var(--ef-accent);
  border-bottom: 2px solid var(--ef-accent);
  transform: rotate(-45deg);
}

.ef-feat--minus li::before {
  top: 10px;
  width: 11px;
  height: 0;
  border-left: 0;
  border-bottom-color: #dd0000;
  transform: none;
}

.ef-req {
  margin-top: 16px;
  padding: 10px 14px;
  border: 1px solid #f0dca9;
  border-radius: 6px;
  background: #fff8e6;
  color: #7a4f00;
}

.ef-proscons {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
}

.ef-terms summary {
  color: var(--ef-ink);
  font-weight: 600;
  cursor: pointer;
}

.ef-terms ul {
  margin: 12px 0 0;
  padding-left: 20px;
}

.ef-terms li {
  margin-bottom: 5px;
}

@media (max-width: 760px) {
  .ef-tabs,
  .ef-grid,
  .ef-proscons {
    grid-template-columns: 1fr;
  }
  .ef-grid,
  .ef-proscons {
    gap: 22px;
  }
}
@media (max-width: 560px) {
  .ef-tab {
    padding: 14px;
  }
  .ef-calc {
    padding: 18px;
  }
  .ef-price {
    font-size: 34px;
  }
}
/* ročne / mesačne */
.ef-pay {
  display: inline-flex;
  gap: 2px;
  margin: 14px 0 2px;
  padding: 3px;
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.18);
}

.ef-pay .ef-pill span {
  min-width: 84px;
  padding: 5px 12px;
  background: transparent;
  font-size: 13px;
}

.ef-bill {
  margin: 4px 0 0;
  color: rgba(255, 255, 255, 0.82);
  font-size: 13px;
}

/* bezplatné eFaktúry k licencii */
.ef-free {
  margin: 14px 0 0;
  padding: 8px 12px;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.13);
}

.ef-free strong {
  color: #fff;
}

.ef-calc-rows .ef-calc-sub {
  padding-left: 12px;
  color: rgba(255, 255, 255, 0.78);
  font-size: 13px;
}

.ef-calc-rows .ef-calc-sub strong {
  color: rgba(255, 255, 255, 0.88);
  font-weight: 600;
}

/*efaktura popis sluzby*/
.ef-lead + .ef-lead {
  margin-top: 12px;
}

.ef-hl {
  color: #dd0000;
  font-weight: 700;
  white-space: nowrap;
}

.ef-page .ef-sec .ef-after {
  margin-top: 18px;
}

/* TABLE */
/* CARDS */
.ef-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 16px;
}

.ef-cards--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ef-card {
  padding: 18px;
  background: #ffffff;
  border: 1px solid var(--ef-hairline);
  border-top: 3px solid var(--ef-accent);
  border-radius: 10px;
}

.ef-page .ef-card h3 {
  margin-bottom: 8px;
}

.ef-card p {
  margin: 0;
}

/* nested list in steps */
.ef-steps .ef-sublist {
  list-style: none;
  margin: 8px 0 0;
  padding: 0;
}

.ef-steps .ef-sublist li {
  counter-increment: none;
  padding: 0 0 4px 18px;
}

.ef-steps .ef-sublist li::before {
  content: "";
  top: 9px;
  width: 6px;
  height: 6px;
  background: var(--ef-accent);
}

.ef-pripravujeme {
  margin-top: 16px;
  padding: 14px 16px 16px;
  border: 1px dashed #d9ddee;
  border-radius: 10px;
  background: #f7f7f7;
}

.ef-page .ef-pripravujeme-text {
  margin: 0;
  color: var(--ef-muted);
}

.ef-badge--prva {
  margin-left: 0;
}

.ef-steps--pripravujeme {
  counter-reset: efs 1;
  color: var(--ef-muted);
}
.ef-steps--pripravujeme .ef-key {
  color: var(--ef-muted);
}
.ef-steps--pripravujeme li::before,
.ef-steps--pripravujeme .ef-sublist li::before {
  background: #c0c0c0;
}

/* invoice states */
.ef-stav {
  display: inline-block;
  padding: 2px 10px;
  border-radius: 20px;
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
}

.ef-stav--odovzdana {
  background: #dfe1ff;
  color: var(--ef-accent-strong);
}

.ef-stav--dorucena {
  background: #dcf1e3;
  color: #1d6b3a;
}

.ef-stav--odmietnuta {
  background: #f8e0da;
  color: #b90000;
}

.ef-stav--nedorucitelna {
  background: #eeeeee;
  color: var(--ef-muted);
}

/* FAQ */
.ef-faq .ef-terms {
  padding: 13px 0;
  border-bottom: 1px solid var(--ef-hairline);
}

.ef-faq .ef-terms:first-child {
  padding-top: 4px;
}

.ef-faq .ef-terms:last-child {
  border-bottom: 0;
}

.ef-faq .ef-terms summary:hover {
  color: var(--ef-accent-strong);
}

.ef-faq .ef-terms p {
  margin: 8px 0 0;
}

@media (max-width: 760px) {
  .ef-cards {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 560px) {
  .ef-hl {
    white-space: normal;
  }
}
/* Mobilne menu (hamburger) */
.container {
  width: 100%;
  max-width: 1140px;
  margin-inline: auto;
  padding-inline: 16px;
}

#obsah:focus {
  outline: none;
}

.cela-sirka:empty {
  display: none;
}

.page {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 32px;
  padding-block: 24px 48px;
}

.page-sidebar:not(:has(a, img, input, iframe)) {
  display: none;
}

.page:has(> .page-sidebar :is(a, img, input, iframe)) {
  grid-template-columns: 280px minmax(0, 1fr);
}

.cela-sirka:not(:empty) + .page {
  padding-block: 0;
}

main:has(> .cela-sirka:empty) {
  background-color: #eef0f7;
}

main:has(> .cela-sirka:empty) .page-content {
  padding: 32px;
  border-radius: 12px;
  background-color: #ffffff;
  box-shadow: 0 1px 2px rgba(20, 26, 61, 0.06);
  color: #2c3150;
}

main:has(> .cela-sirka:empty) .page-content p {
  margin-inline: 0;
}

main:has(> .cela-sirka:empty) .page-sidebar {
  padding: 16px;
  border-radius: 12px;
  background-color: #ffffff;
  box-shadow: 0 1px 2px rgba(20, 26, 61, 0.06);
}

main:has(> .cela-sirka:empty) .ef-page {
  margin: -32px;
  background-color: transparent;
}

main:has(> .cela-sirka:empty) .ef-hero {
  border-radius: 12px 12px 0 0;
}

@media (max-width: 799px) {
  main:has(> .cela-sirka:empty) .page-content {
    padding: 16px;
  }
  main:has(> .cela-sirka:empty) .ef-page {
    margin: -16px;
  }
}
@media (max-width: 799px) {
  .page:has(> .page-sidebar :is(a, img, input, iframe)) {
    grid-template-columns: minmax(0, 1fr);
  }
}
:root {
  --header-offset: 96px;
}

@media (min-width: 800px) {
  :root {
    --header-offset: 144px;
  }
}
#obsah,
.article-text [id],
.news-text [id],
.manual-text [id],
.ef-page [id] {
  scroll-margin-top: var(--header-offset);
}

body > form {
  display: flow-root;
}

.header-sentinel {
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 40px;
  pointer-events: none;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background-color: #ffffff;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.12);
}

/* horna lista */
.topbar {
  border-bottom: 1px solid #e6edf3;
  font-size: 13px;
  line-height: 1.2;
  text-transform: uppercase;
}

.topbar-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 4px 28px;
  margin: 0;
  padding: 8px 0;
  list-style: none;
}
.topbar-links a {
  color: #3f47cc;
  text-decoration: none;
  transition: color 0.3s ease;
}
.topbar-links a:hover, .topbar-links a:focus-visible {
  color: #1c25c3;
}
.topbar-links a i {
  margin-right: 6px;
}
.topbar-links a.hp-fb {
  color: #4267b2;
}
.topbar-links a.hp-fb:hover {
  color: #304a7e;
}
.topbar-links a.hp-team {
  color: #0d8be7;
}
.topbar-links a.hp-team:hover {
  color: #0566c9;
}
.topbar-links a.hp-google {
  color: #dc4a38;
}
.topbar-links a.hp-google:hover {
  color: #973225;
}

/* logo a hlavne menu */
.main-nav-inner {
  display: flex;
  align-items: stretch;
}

.brand {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  padding: 12px 16px 12px 0;
}
.brand img {
  display: block;
  width: 90px;
  height: auto;
  transition: width 0.3s ease;
}

.nav-list {
  display: grid;
  flex: 1;
  grid-auto-columns: minmax(0, 1fr);
  grid-auto-flow: column;
  margin: 0;
  padding: 0;
  list-style: none;
}

.nav-item {
  position: relative;
  border-left: 1px solid #e6edf3;
}

.nav-item > a.menu {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  height: 100%;
  min-height: 114px;
  padding: 8px 4px;
  color: #838b93;
  font-size: 15px;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  transition: color 0.3s ease, background-color 0.3s ease, min-height 0.3s ease;
}
.nav-item > a.menu i {
  font-size: 28px;
  line-height: 1;
}

.nav-item > a.menu:hover,
.nav-item > a.menu:focus-visible,
.nav-item.is-open > a.menu {
  color: #3f47cc;
  background-color: #f7f7f7;
}

.nav-item > a.menu-aktive {
  color: #3f47cc;
  background-color: #f7f7f7;
  box-shadow: inset 0 -3px 0 #3f47cc;
}

.nav-item-efaktura > a.menu {
  position: relative;
  background-color: #fff8e6;
}
.nav-item-efaktura > a.menu i {
  color: #7a4f00;
}

.nav-item-efaktura > a.menu:hover,
.nav-item-efaktura > a.menu:focus-visible,
.nav-item-efaktura.is-open > a.menu,
.nav-item-efaktura > a.menu-aktive {
  background-color: #fff1d1;
}

.nav-item-efaktura > a.menu-aktive {
  box-shadow: inset 0 -3px 0 #ffbd01;
}

.ikona-efaktura svg {
  display: block;
  width: 1em;
  height: 1em;
  margin-inline: auto;
}

.nav-stitok {
  position: absolute;
  top: 8px;
  right: 8px;
  padding: 1px 7px;
  border-radius: 999px;
  background-color: #ffbd01;
  color: #141a3d;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.5;
  text-transform: uppercase;
}

/* podmenu */
.submenu {
  margin: 0;
  padding: 6px 0;
  list-style: none;
  background-color: #ffffff;
}
.submenu a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 16px;
  color: #535353;
  font-size: 15px;
  line-height: 1.3;
  text-decoration: none;
  transition: color 0.2s ease, background-color 0.2s ease;
}
.submenu a:hover, .submenu a:focus-visible {
  color: #1c25c3;
  background-color: #f4f5fd;
}
.submenu a i {
  color: #5f65d8;
}

.text-sub {
  padding: 0 6px;
  border-radius: 4px;
  background-color: #3f47cc;
  color: #ffffff;
  font-size: 13px;
  white-space: nowrap;
}

.menu-toggle {
  display: none;
}

@media (min-width: 800px) {
  .submenu {
    position: absolute;
    top: 100%;
    left: 50%;
    z-index: 10;
    min-width: 240px;
    border: 1px solid #c5cfd7;
    border-top: 3px solid #5f65d8;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
    transform: translateX(-50%);
    visibility: hidden;
    opacity: 0;
    transition: opacity 0.2s ease, visibility 0.2s ease;
  }
  .nav-item:last-child .submenu {
    right: 0;
    left: auto;
    transform: none;
  }
  .nav-item:hover > .submenu,
  .nav-item:focus-within > .submenu,
  .nav-item.is-open > .submenu {
    visibility: visible;
    opacity: 1;
  }
  .nav-item.is-closed > .submenu {
    visibility: hidden;
    opacity: 0;
  }
  .site-header.is-scrolled .brand img {
    width: 48px;
  }
  .site-header.is-scrolled .nav-item > a.menu {
    flex-direction: row;
    gap: 8px;
    min-height: 56px;
  }
  .site-header.is-scrolled .nav-item > a.menu i {
    display: none;
  }
  .site-header.is-scrolled .nav-stitok {
    display: none;
  }
}
@media (max-width: 799px) {
  .site-header {
    display: flex;
    flex-direction: column;
    max-height: 100vh;
    overflow-y: auto;
  }
  .main-nav {
    order: 1;
  }
  .topbar {
    display: none;
    order: 2;
    border-top: 1px solid #e6edf3;
    border-bottom: 0;
  }
  .site-header.menu-open .topbar {
    display: block;
  }
  .topbar-links {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px 16px;
    padding: 12px 0;
  }
  .main-nav-inner {
    flex-wrap: wrap;
    align-items: center;
  }
  .brand img {
    width: 56px;
  }
  .menu-toggle {
    display: block;
    width: 48px;
    height: 48px;
    margin-left: auto;
    padding: 12px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    cursor: pointer;
  }
  .menu-toggle-bar {
    display: block;
    height: 3px;
    margin-top: 5px;
    border-radius: 2px;
    background-color: #3f47cc;
    transition: transform 0.3s ease, opacity 0.3s ease;
  }
  .menu-toggle-bar:first-child {
    margin-top: 2px;
  }
  .menu-open .menu-toggle-bar:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
  }
  .menu-open .menu-toggle-bar:nth-child(2) {
    opacity: 0;
  }
  .menu-open .menu-toggle-bar:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
  }
  .nav-list {
    display: none;
    flex-basis: 100%;
    grid-template-columns: minmax(0, 1fr);
    grid-auto-flow: row;
  }
  .site-header.menu-open .nav-list {
    display: grid;
  }
  .nav-item {
    border-top: 1px solid #e6edf3;
    border-left: 0;
  }
  .nav-item > a.menu {
    flex-direction: row;
    justify-content: flex-start;
    gap: 16px;
    height: auto;
    min-height: 0;
    padding: 12px 0;
    font-size: 17px;
    text-align: left;
  }
  .nav-item > a.menu i {
    width: 28px;
    font-size: 24px;
    text-align: center;
  }
  .nav-item > a.menu-aktive {
    box-shadow: inset 3px 0 0 #3f47cc;
  }
  .nav-item-efaktura > a.menu-aktive {
    box-shadow: inset 3px 0 0 #ffbd01;
  }
  .nav-stitok {
    position: static;
  }
  .submenu {
    display: none;
    padding: 0;
    background-color: #1c25c3;
  }
  .submenu a {
    padding: 12px 16px 12px 44px;
    color: #ffffff;
  }
  .submenu a i {
    color: #b3b7ff;
  }
  .submenu a:hover, .submenu a:focus-visible {
    color: #ffffff;
    background-color: #121895;
  }
  .nav-item.is-open > .submenu {
    display: block;
  }
}
.site-footer {
  border-top: 3px solid #242424;
  background-color: #333333;
  background-image: url(img/bg1.png);
  color: #eeeeee;
  text-shadow: 0 2px 2px #000000;
}

.footer-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 32px;
  align-items: start;
  padding-block: 40px;
}

.footer-logo {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #eeeeee;
  font-size: 16px;
  letter-spacing: 1px;
  text-decoration: none;
  text-transform: uppercase;
  transition: color 0.5s ease;
}
.footer-logo img {
  border: 1px solid #878ce5;
}
.footer-logo:hover {
  color: #ffc92e;
}

.footer-social {
  display: flex;
  gap: 15px;
  margin-top: 32px;
}
.footer-social a {
  display: inline-grid;
  place-items: center;
  width: 50px;
  height: 50px;
  border: 1px solid #999999;
  border-radius: 50%;
  background-color: #6c6c6c;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.5) inset;
  color: #ffffff;
  font-size: 20px;
  text-decoration: none;
  transition: background-color 0.8s ease, box-shadow 0.8s ease;
}
.footer-social a:hover {
  background-color: #3f47cc;
  box-shadow: none;
}
.footer-social a.fb:hover {
  background-color: #4267b2;
}
.footer-social a.gb:hover {
  background-color: #dc4a38;
}
.footer-social a.tw:hover {
  background-color: #0d8be7;
}

.footer-title {
  margin: 10px 0 8px;
  color: #ffc92e;
  font-size: 17px;
  font-weight: bold;
  letter-spacing: 2px;
  line-height: 35px;
  text-transform: uppercase;
}

.footer-links,
.footer-contact {
  margin: 0 0 16px;
  padding: 0;
  list-style: none;
  font-size: 15px;
  letter-spacing: 1px;
  line-height: 25px;
}

.footer-links a,
.footer-contact a {
  color: #eeeeee;
  text-decoration: none;
  transition: color 0.5s ease;
}
.footer-links a:hover,
.footer-contact a:hover {
  color: #ffc92e;
}

.footer-contact a {
  text-decoration: underline;
  text-underline-offset: 3px;
}

.footer-firma {
  margin-bottom: 4px;
}

.footer-contact i {
  margin-right: 8px;
}

.footer-bottom {
  border-top: 1px solid #242424;
  background-color: #242424;
  color: #999999;
  font-size: 14px;
  letter-spacing: 1px;
  line-height: 50px;
}
.footer-bottom a {
  color: #999999;
  text-decoration: none;
  white-space: nowrap;
  transition: color 0.5s ease;
}
.footer-bottom a:hover {
  color: #ffc92e;
}
.footer-bottom .sep {
  margin: 0 10px;
}

@media (max-width: 1139px) {
  .footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 799px) {
  .footer-grid {
    grid-template-columns: minmax(0, 1fr);
    justify-items: center;
    text-align: center;
  }
  .footer-social {
    justify-content: center;
  }
}
/* manual (help/manual.aspx): strom je v bocnom paneli .page-sidebar, text v .page-content */
.left-manual {
  text-align: left;
}

/* typografia obsahu z databazy (stranky produktov, novinky, manual, aktualizacie) */
.article-text,
.news-text,
.manual-text,
.aktual-text {
  font-size: 16px;
  line-height: 1.6;
  text-align: left;
}
.article-text h1,
.news-text h1,
.manual-text h1,
.aktual-text h1 {
  margin: 0 0 16px;
  font-size: clamp(20px, 2vw, 23px);
  line-height: 1.2;
}
.article-text h2,
.news-text h2,
.manual-text h2,
.aktual-text h2 {
  position: relative;
  padding: 14px 0 0;
  border: 0;
  color: #141a3d;
  font-weight: 600;
  margin: 32px 0 12px;
  font-size: 20px;
  line-height: 1.3;
}
.article-text h2::before,
.news-text h2::before,
.manual-text h2::before,
.aktual-text h2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 40px;
  height: 3px;
  border-radius: 2px;
  background-color: #ffbd01;
}
.article-text h3,
.news-text h3,
.manual-text h3,
.aktual-text h3 {
  margin: 24px 0 8px;
  font-size: 18px;
  line-height: 1.35;
}
.article-text h1:first-child,
.article-text h2:first-child,
.article-text h3:first-child,
.news-text h1:first-child,
.news-text h2:first-child,
.news-text h3:first-child,
.manual-text h1:first-child,
.manual-text h2:first-child,
.manual-text h3:first-child,
.aktual-text h1:first-child,
.aktual-text h2:first-child,
.aktual-text h3:first-child {
  margin-top: 0;
}
.article-text p,
.news-text p,
.manual-text p,
.aktual-text p {
  max-width: 72ch;
  margin: 0 0 16px;
}
.article-text ul,
.article-text ol,
.news-text ul,
.news-text ol,
.manual-text ul,
.manual-text ol,
.aktual-text ul,
.aktual-text ol {
  margin: 0 0 16px;
  padding-left: 24px;
}
.article-text li,
.news-text li,
.manual-text li,
.aktual-text li {
  margin-bottom: 6px;
}

.manual-text h3 {
  font-size: 17px;
  font-weight: 600;
}

/* obaly obsahu (stare .article-text ma padding 10px) bez vodorovneho odsadenia - odsadenie ma panel (_rozlozenie.scss) */
.article-text,
.manual-text,
.aktual-text {
  padding: 8px 0;
}

/* dlhe zoznamy (12 a viac poloziek) na sirokej obrazovke v dvoch stlpcoch */
@media (min-width: 1024px) {
  .article-text ul:has(> li:nth-child(12)),
  .news-text ul:has(> li:nth-child(12)),
  .manual-text ul:has(> li:nth-child(12)),
  .aktual-text ul:has(> li:nth-child(12)) {
    columns: 2;
    column-gap: 40px;
  }
  .article-text ul:has(> li:nth-child(12)) > li,
  .news-text ul:has(> li:nth-child(12)) > li,
  .manual-text ul:has(> li:nth-child(12)) > li,
  .aktual-text ul:has(> li:nth-child(12)) > li {
    break-inside: avoid;
  }
}
/* mriezka produktov (pokladne.aspx): DataList s RepeatLayout="Flow" obali kazdu kartu do <span>.
   Karty maju roznu vysku (nazov na 1 alebo 2 riadky) a pri float by sa riadky zasekli - preto flex. */
.list-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.list-grid > span {
  display: flex;
  width: calc((100% - 48px) / 4);
}

.list-grid > span > .list-link {
  width: 100%;
  float: none;
  padding: 16px;
  border: 1px solid #d9ddee;
  border-radius: 10px;
  background-color: #ffffff;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.list-grid > span > .list-link:hover, .list-grid > span > .list-link:focus-within {
  border-color: #3f47cc;
  box-shadow: 0 4px 14px rgba(20, 26, 61, 0.08);
}

.list-tit {
  color: #141a3d;
}

@media (max-width: 800px) {
  .list-grid > span {
    width: calc((100% - 16px) / 2);
  }
}
@media (max-width: 450px) {
  .list-grid > span {
    width: 100%;
  }
}
/* odkaz-tlacidlo: <p class="odkaz"><a> (zoznam modulov v manuali), <div class="odkaz"><p><a>…</a>.</p></div>
   (odkaz v texte clanku manualu z databazy) a <div class="odkaz"> s viacerymi <a> (produkty.aspx).
   Sirka podla textu, sipka naznacuje prechod na iny clanok. */
.odkaz a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 4px 8px 4px 0;
  padding: 10px 16px;
  border: 1px solid #dfe1ff;
  border-radius: 8px;
  background-color: #f4f5fd;
  color: #121895;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}
.odkaz a::after {
  content: "→";
  color: #b28400;
  transition: transform 0.2s ease;
}
.odkaz a:hover, .odkaz a:focus-visible {
  border-color: #3f47cc;
  background-color: #e8ebf8;
  color: #00056b;
}
.odkaz a:hover::after {
  transform: translateX(3px);
}

p.odkaz {
  margin: 0;
}

p.odkaz:has(+ :not(.odkaz)) {
  margin-bottom: 12px;
}

@media (prefers-reduced-motion: reduce) {
  .odkaz a::after {
    transition: none;
  }
}
/* aktualizacia.aspx: tlacidla na stiahnutie suborov (a.akt-bt) v style .tlacidlo s ikonou stiahnutia;
   po sebe iduce tlacidla (64/32-bit, stabilna/beta verzia) stoja vedla seba, na mobile sa zalomia */
.aktual-text a.akt-bt {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 8px 16px 0;
  padding: 10px 20px;
  border: 2px solid transparent;
  border-radius: 8px;
  background-color: #3f47cc;
  color: #ffffff;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  transition: background-color 0.2s ease;
}
.aktual-text a.akt-bt::before {
  content: "";
  flex: none;
  width: 18px;
  height: 18px;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v11M7 10l5 5 5-5M5 20h14'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v11M7 10l5 5 5-5M5 20h14'/%3E%3C/svg%3E") center/contain no-repeat;
}
.aktual-text a.akt-bt:hover, .aktual-text a.akt-bt:focus-visible {
  background-color: #121895;
  color: #ffffff;
}
.aktual-text a.akt-bt.light {
  border: 2px solid #3f47cc;
  background-color: #ffffff;
  color: #1c25c3;
}
.aktual-text a.akt-bt.light:hover, .aktual-text a.akt-bt.light:focus-visible {
  background-color: #f4f5fd;
  color: #121895;
}

:where(.article-text, .news-text, .manual-text, .aktual-text, .det-html) table,
.ef-table,
.cennik-tabulka,
.tab_param,
.aktual,
.tab-ekasa,
.kosik_grid {
  width: 100%;
  margin: 0 0 16px;
  border-collapse: collapse;
  font-size: 15px;
}
:where(.article-text, .news-text, .manual-text, .aktual-text, .det-html) table th,
:where(.article-text, .news-text, .manual-text, .aktual-text, .det-html) table td,
.ef-table th,
.ef-table td,
.cennik-tabulka th,
.cennik-tabulka td,
.tab_param th,
.tab_param td,
.aktual th,
.aktual td,
.tab-ekasa th,
.tab-ekasa td,
.kosik_grid th,
.kosik_grid td {
  padding: 10px 14px;
  border-bottom: 1px solid #d9ddee;
  text-align: left;
  vertical-align: top;
}
:where(.article-text, .news-text, .manual-text, .aktual-text, .det-html) table thead th,
:where(.article-text, .news-text, .manual-text, .aktual-text, .det-html) table tr:not(:has(> td)) > th,
.ef-table thead th,
.ef-table tr:not(:has(> td)) > th,
.cennik-tabulka thead th,
.cennik-tabulka tr:not(:has(> td)) > th,
.tab_param thead th,
.tab_param tr:not(:has(> td)) > th,
.aktual thead th,
.aktual tr:not(:has(> td)) > th,
.tab-ekasa thead th,
.tab-ekasa tr:not(:has(> td)) > th,
.kosik_grid thead th,
.kosik_grid tr:not(:has(> td)) > th {
  border-bottom: 2px solid #3f47cc;
  background-color: #e8ebf8;
  color: #141a3d;
  font-weight: 600;
}
:where(.article-text, .news-text, .manual-text, .aktual-text, .det-html) table tr:has(> td) > th,
.ef-table tr:has(> td) > th,
.cennik-tabulka tr:has(> td) > th,
.tab_param tr:has(> td) > th,
.aktual tr:has(> td) > th,
.tab-ekasa tr:has(> td) > th,
.kosik_grid tr:has(> td) > th {
  color: #141a3d;
  font-weight: 600;
}

.tab_param td {
  text-align: right;
}

.aktual th,
.aktual td,
.tab-ekasa th,
.tab-ekasa td {
  text-align: center;
}

.aktual tr[onclick] {
  cursor: pointer;
}

.aktual tr[onclick]:hover > td {
  background-color: #e8ebf8;
}

.tab-ekasa tr.tr-ekasa:hover > td {
  background-color: #e8ebf8;
}

@media (max-width: 560px) {
  .ef-table th,
  .ef-table td {
    padding: 8px 6px;
  }
}
/* siroke tabulky sa na mobile posuvaju vodorovne vo svojom priestore, nepretecu stranku */
@media (max-width: 799px) {
  :where(.article-text, .news-text, .manual-text, .aktual-text, .det-html) table,
  .aktual,
  .tab-ekasa,
  .kosik_grid {
    display: block;
    overflow-x: auto;
  }
}
.hlavicka:has(> [class^=article-title], > .hlavicka-title) {
  margin: -32px -32px 24px;
}

.hlavicka > [class^=article-title],
.hlavicka:has(> .hlavicka-title) {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 0 4px;
  padding: 28px 32px 0;
  border-bottom: 1px solid #d9ddee;
  border-radius: 12px 12px 0 0;
  background-color: #e8ebf8;
}

.page-content [id$=_PN_kosik]:not(.none) {
  display: flow-root;
  margin: -32px -32px 0;
  padding: 8px 32px;
  border: 0;
  border-bottom: 1px solid #d9ddee;
  border-radius: 12px 12px 0 0;
}

.page-content [id$=_PN_kosik]:not(.none) ~ .hlavicka {
  margin-top: 0;
}

.page-content [id$=_PN_kosik]:not(.none) ~ .hlavicka > [class^=article-title],
.page-content [id$=_PN_kosik]:not(.none) ~ .hlavicka:has(> .hlavicka-title) {
  border-radius: 0;
}

.hlavicka .article-left,
.hlavicka-title {
  flex: 1 0 100%;
  order: 2;
  padding-bottom: 20px;
}

.hlavicka h1 {
  display: flex;
  align-items: center;
  gap: 16px;
  margin: 0;
  color: #141a3d;
  font-size: clamp(20px, 2vw, 23px);
  font-weight: 700;
  line-height: 1.2;
}
.hlavicka h1 > [class*=icon-] {
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background-color: #3f47cc;
  color: #ffffff;
  font-size: 24px;
}
.hlavicka h1 > img {
  flex: none;
  width: 48px;
  height: auto;
}

.manual-cesta ol {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 8px;
  margin: 0 0 8px;
  padding: 0;
  list-style: none;
  font-size: 14px;
  line-height: 1.4;
}

.manual-cesta li + li::before {
  content: "›";
  margin-right: 8px;
  color: #5c6285;
}

.manual-cesta a {
  color: #1c25c3;
  font-weight: 500;
  text-decoration: none;
}
.manual-cesta a:hover, .manual-cesta a:focus-visible {
  color: #121895;
  text-decoration: underline;
}

.hlavicka .article-right,
.hlavicka-link {
  display: contents;
}

.hlavicka > img[src=""] {
  display: none;
}

.hlavicka .article-right > a,
.hlavicka-link > a,
.page-tab {
  order: 3;
  margin-bottom: -1px;
  padding: 10px 14px;
  border-bottom: 3px solid transparent;
  color: #5c6285;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  transition: color 0.2s ease, border-color 0.2s ease;
}

.hlavicka .article-right > a:hover,
.hlavicka .article-right > a:focus-visible,
.hlavicka-link > a:hover,
.hlavicka-link > a:focus-visible {
  border-bottom-color: #f0dca9;
  color: #1c25c3;
}

.page-tab.is-active {
  border-bottom-color: #ffbd01;
  color: #1c25c3;
}

.page-content:has(.news-text) .tab-produkt,
.page-content:has(.produkt-text) .tab-novinky {
  display: none;
}

.hlavicka .article-right > a[href="javascript:history.go(-1)"] {
  order: 1;
  margin: 0 0 8px;
  padding: 0;
  border: 0;
  color: #3f47cc;
  font-size: 14px;
  font-weight: 500;
}
.hlavicka .article-right > a[href="javascript:history.go(-1)"]::before {
  content: "← ";
}
.hlavicka .article-right > a[href="javascript:history.go(-1)"]:hover, .hlavicka .article-right > a[href="javascript:history.go(-1)"]:focus-visible {
  color: #121895;
  text-decoration: underline;
}

@media (max-width: 799px) {
  .hlavicka:has(> [class^=article-title], > .hlavicka-title) {
    margin: -16px -16px 16px;
  }
  .page-content [id$=_PN_kosik]:not(.none) {
    margin: -16px -16px 0;
    padding: 8px 16px;
  }
  .hlavicka > [class^=article-title],
  .hlavicka:has(> .hlavicka-title) {
    padding: 16px 16px 0;
  }
  .hlavicka h1 {
    gap: 12px;
  }
  .hlavicka h1 > [class*=icon-] {
    width: 40px;
    height: 40px;
    font-size: 20px;
  }
  .hlavicka h1 > img {
    width: 40px;
  }
  .hlavicka .article-right > a,
  .hlavicka-link > a,
  .page-tab {
    padding: 10px;
  }
}
/* verzia */
.option-heading,
.option-heading1 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 16px;
  padding: 14px 20px;
  border: 1px solid #d9ddee;
  border-left: 4px solid #3f47cc;
  border-radius: 8px;
  background-color: #ffffff;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.option-heading:first-child,
.option-heading1:first-child {
  margin-top: 0;
}
.option-heading:hover,
.option-heading1:hover {
  background-color: #f4f5fd;
}
.option-heading h2,
.option-heading1 h2 {
  margin: 0;
  color: #141a3d;
  font-size: 20px;
  line-height: 1.3;
}
.option-heading::after,
.option-heading1::after {
  content: "";
  flex: none;
  width: 10px;
  height: 10px;
  margin: -4px 4px 0 0;
  border: solid #3f47cc;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
  transition: transform 0.2s ease;
}
.option-heading.is-open,
.option-heading1.is-open {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.option-heading.is-open::after,
.option-heading1.is-open::after {
  margin-top: 4px;
  transform: rotate(-135deg);
}

.option-heading1,
.option-heading.is-open {
  background-color: #e8ebf8;
}

.prava_hlava {
  display: none;
}

.verzia-prepinac {
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.option-content,
.option-content1 {
  padding: 16px 20px 8px;
  border: 1px solid #d9ddee;
  border-top: 0;
  border-radius: 0 0 8px 8px;
}

.option-content {
  display: none;
}

/* podverzia */
.news-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 24px 0 8px;
  padding-top: 20px;
  border-top: 1px solid #d9ddee;
}
.news-title:first-child {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}
.news-title h3 {
  margin: 0;
  color: #141a3d;
  font-size: 17px;
  line-height: 1.3;
}

.news-right {
  flex: none;
  padding: 2px 10px;
  border-radius: 999px;
  background-color: #e8ebf8;
  color: #5c6285;
  font-size: 13px;
  font-weight: 600;
}

/* vlozene styly z editora (skopirovane z Wordu a prehliadaca) v textoch noviniek */
.option-content [style*=margin-left],
.option-content1 [style*=margin-left] {
  margin-left: 0 !important;
}
.option-content [style*=font-family],
.option-content [style*=font-size],
.option-content1 [style*=font-family],
.option-content1 [style*=font-size] {
  font-family: inherit !important;
  font-size: inherit !important;
}
.option-content [style*=background-color],
.option-content1 [style*=background-color] {
  background-color: transparent !important;
}

/* mapa verzii v bocnom paneli (lavy_panel); na stranke produktu je prazdna a skryje sa */
.mapa-stranok {
  position: sticky;
  top: var(--header-offset);
  max-height: calc(100vh - var(--header-offset) - 16px);
  overflow-y: auto;
  padding: 16px;
  border: 1px solid #d9ddee;
  border-radius: 8px;
  background-color: #ffffff;
  font-size: 14px;
  line-height: 1.4;
}

.mapa-stranok:not(:has(a)) {
  display: none;
}

.mapa-nadpis {
  margin: 0 0 12px;
  color: #141a3d;
  font-size: 16px;
  line-height: 1.3;
}

.map-obal + .map-obal {
  margin-top: 12px;
}

.map-verzia a {
  color: #1c25c3;
  font-weight: 700;
  text-decoration: none;
}

.map-podobal {
  margin-top: 4px;
  padding-left: 12px;
  border-left: 2px solid #eeeeee;
}

.map-podverzia {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  padding: 2px 0;
  color: #5c6285;
  font-size: 13px;
}
.map-podverzia a {
  color: #2c3150;
  text-decoration: none;
}

.map-verzia a:hover,
.map-verzia a:focus-visible,
.map-podverzia a:hover,
.map-podverzia a:focus-visible {
  color: #1c25c3;
  text-decoration: underline;
}

@media (max-width: 799px) {
  .page-sidebar:has(> .mapa-stranok) {
    display: none;
  }
}
.produkt-text {
  float: none;
  margin: 0;
  padding: 0;
  border: 0;
  background-color: transparent;
}
.produkt-text > p:first-child {
  margin-bottom: 24px;
  color: #5c6285;
  font-size: 19px;
  line-height: 1.55;
}
.produkt-text h2 {
  position: relative;
  padding: 14px 0 0;
  border: 0;
  color: #141a3d;
  font-weight: 600;
  margin-top: 0;
  font-size: 22px;
  line-height: 1.3;
}
.produkt-text h2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 40px;
  height: 3px;
  border-radius: 2px;
  background-color: #ffbd01;
}
.produkt-text > h2,
.produkt-text > .k_lista {
  margin-top: 40px;
}
.produkt-text ul {
  padding-left: 0;
  list-style: none;
}
.produkt-text li {
  position: relative;
  margin-bottom: 10px;
  padding-left: 32px;
}
.produkt-text li::before {
  content: "";
  position: absolute;
  top: 3px;
  left: 0;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #fff1d1;
}
.produkt-text li::after {
  content: "";
  position: absolute;
  top: 7px;
  left: 7px;
  width: 6px;
  height: 10px;
  border: solid #7a4f00;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.produkt-text [style*="text-align: justify"],
.produkt-text [style*="text-align:justify"] {
  text-align: left !important;
}
.produkt-text > p:has(+ .produkt-kontakt) {
  margin-bottom: 0;
}

/* kontaktny box na konci stranky produktu */
.produkt-kontakt {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px 24px;
  margin-top: 40px;
  padding: 24px;
  border: 1px solid #d9ddee;
  border-radius: 12px;
  background-color: #e8ebf8;
}
.produkt-kontakt p {
  max-width: none;
  margin: 0;
}
.produkt-kontakt a[href^="tel:"] {
  color: #1c25c3;
  font-weight: 600;
  white-space: nowrap;
}

.produkt-kontakt-text {
  flex: 1 1 320px;
}

.produkt-kontakt-nadpis {
  color: #141a3d;
  font-size: 19px;
  font-weight: 700;
}

.tlacidlo {
  display: inline-block;
  padding: 12px 22px;
  border-radius: 8px;
  background-color: #3f47cc;
  color: #ffffff;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  transition: background-color 0.2s ease;
}
.tlacidlo:hover, .tlacidlo:focus-visible {
  background-color: #121895;
  color: #ffffff;
}

.produkt-kontakt .tlacidlo,
.produkt-kontakt .tlacidlo:hover,
.produkt-kontakt .tlacidlo:focus-visible {
  color: #ffffff;
}

/* detail pokladne (detail.aspx, wuc_detail2.ascx): nadpis sekcie parametrov s linkou v akcente ako hlavicka tabulky */
.det-title {
  padding: 0 0 6px;
  border-bottom: 2px solid #3f47cc;
  color: #141a3d;
  font-size: 17px;
  font-weight: 600;
  line-height: 30px;
}

/* detail pokladne: obrazok vlavo, hned vedla neho nakupny stlpec (cisla, pod nimi cena, pod cenou nakup);
   popis a parametre pod nimi cez celu sirku. Na mobile vsetko pod sebou. */
.det {
  display: grid;
  grid-template-columns: minmax(0, auto) minmax(0, 1fr);
  gap: 24px 40px;
  align-items: start;
}

.det > .det-popis,
.det > .det-param {
  grid-column: 1/-1;
}

.det-img {
  float: none;
  max-width: 360px;
}
.det-img img {
  display: block;
  float: none;
  height: auto !important;
}

.det-nakup {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
}

.det-nakup :is(.det-info-obal, .det-info, .det-suma, .det-bezdph, .det-akcia, .det-kosik-obal) {
  float: none;
  width: auto;
  margin: 0;
  text-align: left;
}

.det-nakup .det-info {
  color: #5c6285;
  font-size: 14px;
  line-height: 1.5;
}

@media (max-width: 799px) {
  .det {
    grid-template-columns: minmax(0, 1fr);
  }
  .det-img {
    max-width: none;
  }
}
.uvod-hero,
.uvod-produkty,
.uvod-zakaznici,
.uvod-novinky,
.uvod-referencie {
  padding-block: 56px;
}

.uvod-nadpis {
  margin: 0 0 32px;
  color: #141a3d;
  font-size: clamp(24px, 3vw, 30px);
  line-height: 1.25;
  text-align: center;
}

.uvod-viac {
  margin: 24px 0 0;
  text-align: center;
}
.uvod-viac a {
  color: #1c25c3;
  font-weight: 600;
  text-decoration: none;
}
.uvod-viac a::after {
  content: " →";
}
.uvod-viac a:hover, .uvod-viac a:focus-visible {
  text-decoration: underline;
}

/* uvodna sekcia */
.uvod-hero {
  background: linear-gradient(180deg, #f4f5fd 0%, #ffffff 100%);
}

.uvod-hero-mriezka {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: 48px;
  align-items: center;
}

.uvod-stitok {
  display: inline-block;
  margin: 0 0 16px;
  padding: 4px 12px;
  border-radius: 999px;
  background-color: #dfe1ff;
  color: #121895;
  font-size: 14px;
  font-weight: 600;
}

.uvod-hero h1 {
  margin: 0 0 16px;
  color: #141a3d;
  font-size: clamp(28px, 5vw, 34px);
  font-weight: 800;
  line-height: 1.1;
}

.uvod-perex {
  max-width: 60ch;
  margin: 0 0 28px;
  color: #5c6285;
  font-size: 19px;
  line-height: 1.55;
}

.uvod-tlacidla {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.tlacidlo-obrys {
  padding: 10px 20px;
  border: 2px solid #3f47cc;
  background-color: #ffffff;
  color: #1c25c3;
}
.tlacidlo-obrys:hover, .tlacidlo-obrys:focus-visible {
  background-color: #f4f5fd;
  color: #121895;
}

.uvod-efaktura {
  padding: 24px;
  border-top: 4px solid #ffbd01;
  border-radius: 12px;
  background-color: #ffffff;
  box-shadow: 0 12px 32px rgba(0, 4, 85, 0.12);
}
.uvod-efaktura h2 {
  margin: 16px 0 8px;
  color: #141a3d;
  font-size: 20px;
  line-height: 1.3;
}
.uvod-efaktura p {
  margin: 0 0 20px;
  color: #5c6285;
  font-size: 15px;
  line-height: 1.55;
}

.uvod-efaktura-obr {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 8px;
}

/* moduly systemu */
.uvod-dlazdice {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.uvod-dlazdica {
  display: flex;
  flex-direction: column;
  gap: 8px;
  height: 100%;
  padding: 20px;
  border: 1px solid #d9ddee;
  border-radius: 12px;
  background-color: #ffffff;
  color: #5c6285;
  text-decoration: none;
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}
.uvod-dlazdica i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin-bottom: 8px;
  border-radius: 50%;
  background-color: #3f47cc;
  color: #ffffff;
  font-size: 24px;
}
.uvod-dlazdica strong {
  color: #141a3d;
  font-size: 18px;
  line-height: 1.3;
}
.uvod-dlazdica span {
  font-size: 15px;
  line-height: 1.5;
}
.uvod-dlazdica:hover, .uvod-dlazdica:focus-visible {
  border-color: #878ce5;
  box-shadow: 0 8px 24px rgba(0, 4, 85, 0.1);
  transform: translateY(-2px);
}

.uvod-dlazdica--volby:hover, .uvod-dlazdica--volby:focus-visible {
  border-color: #d9ddee;
  box-shadow: none;
  transform: none;
}

.uvod-dlazdica-tlacidla {
  display: flex;
  gap: 8px;
  margin-top: auto;
}
.uvod-dlazdica-tlacidla .tlacidlo {
  flex: 1;
  padding: 9px 12px;
  text-align: center;
}

/* pas pre zakaznikov */
.uvod-zakaznici {
  background-color: #f7f7f7;
}

.uvod-karty,
.uvod-vyhody {
  margin: 0;
  padding: 0;
  list-style: none;
}

.uvod-karty {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.uvod-karta {
  display: flex;
  flex-direction: column;
  gap: 8px;
  height: 100%;
  padding: 20px;
  border: 1px solid #d9ddee;
  border-radius: 12px;
  background-color: #ffffff;
  color: #5c6285;
  text-decoration: none;
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}
.uvod-karta i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin-bottom: 8px;
  border-radius: 50%;
  background-color: #dfe1ff;
  color: #1c25c3;
  font-size: 24px;
}
.uvod-karta strong {
  color: #141a3d;
  font-size: 18px;
  line-height: 1.3;
}
.uvod-karta span {
  font-size: 15px;
  line-height: 1.5;
}
.uvod-karta:hover, .uvod-karta:focus-visible {
  border-color: #878ce5;
  box-shadow: 0 8px 24px rgba(0, 4, 85, 0.1);
  transform: translateY(-2px);
}

.uvod-vyhody {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px 40px;
  margin-top: 32px;
  color: #5c6285;
  font-size: 15px;
}
.uvod-vyhody li {
  display: flex;
  align-items: center;
  gap: 10px;
}

.uvod-vyhoda-ikona {
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 2px solid #b3b7ff;
  border-radius: 50%;
  background-color: #ffffff;
  color: #3f47cc;
}
.uvod-vyhoda-ikona svg {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* novinky verzii - HTML karty sklada Default.aspx.cs:
   .news-box > .news-title-{t|s|b|f} > (a, .news-date-*) + .news-flex > (.news-body, img).
   Obaly news-title-* a news-flex su display: contents, ich deti sa ukladaju do mriezky karty. */
.uvod-novinky-mriezka {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

.uvod-novinky {
  background-color: #f7f7f7;
}
.uvod-novinky .news-box {
  display: grid;
  grid-template-areas: "ikona kategoria" "nadpis nadpis" "text text";
  grid-template-columns: 32px minmax(0, 1fr);
  align-content: start;
  gap: 8px 12px;
  padding: 20px 24px;
  border: 1px solid #d9ddee;
  border-radius: 12px;
  background-color: #ffffff;
}
.uvod-novinky [class^=news-title-],
.uvod-novinky .news-flex {
  display: contents;
}
.uvod-novinky [class^=news-title-] > a {
  grid-area: nadpis;
  color: #141a3d;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none;
}
.uvod-novinky [class^=news-title-] > a::before {
  content: "Verzia ";
}
.uvod-novinky [class^=news-title-] > a::after {
  content: " →";
  color: #3f47cc;
}
.uvod-novinky [class^=news-title-] > a:hover, .uvod-novinky [class^=news-title-] > a:focus-visible {
  color: #1c25c3;
  text-decoration: underline;
}
.uvod-novinky [class^=news-title-] > a[href="#"]::after {
  content: none;
}
.uvod-novinky [class^=news-date-] {
  grid-area: kategoria;
  align-self: center;
  color: #1c25c3;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.uvod-novinky .news-flex > img {
  grid-area: ikona;
  width: 32px;
  height: 32px;
  object-fit: contain;
}
.uvod-novinky .news-body {
  grid-area: text;
  max-height: 6.4em;
  overflow: hidden;
  mask-image: linear-gradient(#000 60%, transparent);
  color: #5c6285;
  font-size: 15px;
  line-height: 1.6;
}
.uvod-novinky .news-body p,
.uvod-novinky .news-body ul {
  margin: 0 0 8px;
}
.uvod-novinky .news-body ul {
  padding-left: 20px;
}
.uvod-novinky .news-body:focus-within {
  max-height: none;
  mask-image: none;
}

/* referencie - beziaci pas na sirku obsahu (.ref-okno je v .container). Sirka pasu je 2 x (logo + medzera): padding-right = gap, aby posun o -50 %
   presne nadviazal na zaciatok (kopie log pridava masterpage.js, dlzku animacie --ref-trvanie tiez). */
.uvod-referencie .uvod-viac {
  margin-top: 16px;
}

.ref-okno {
  overflow: hidden;
  padding-block: 8px;
  mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}

#PN_referencie {
  display: flex;
  align-items: center;
  gap: 24px;
  width: max-content;
  padding-right: 24px;
  animation: ref-pas var(--ref-trvanie, 60s) linear infinite;
}
#PN_referencie .img-wrapper {
  flex: none;
}
#PN_referencie img {
  display: block;
  width: auto;
  max-width: 140px;
  height: 120px;
  object-fit: contain;
  filter: grayscale(1);
  opacity: 0.7;
  transition: filter 0.3s ease, opacity 0.3s ease;
}
#PN_referencie a:hover img,
#PN_referencie a:focus-visible img {
  filter: none;
  opacity: 1;
}

.ref-okno:hover #PN_referencie {
  animation-play-state: paused;
}

.ref-okno:focus-within #PN_referencie {
  animation: none;
}

@keyframes ref-pas {
  to {
    transform: translateX(-50%);
  }
}
@media (prefers-reduced-motion: reduce) {
  #PN_referencie {
    animation: none;
  }
  .ref-okno {
    overflow-x: auto;
    mask-image: none;
  }
}
@media (max-width: 1023px) {
  .uvod-dlazdice {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 799px) {
  .uvod-hero,
  .uvod-produkty,
  .uvod-zakaznici,
  .uvod-novinky,
  .uvod-referencie {
    padding-block: 40px;
  }
  .uvod-hero-mriezka {
    grid-template-columns: minmax(0, 1fr);
    gap: 32px;
  }
  .uvod-karty,
  .uvod-novinky-mriezka {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 559px) {
  .uvod-dlazdice {
    grid-template-columns: minmax(0, 1fr);
  }
}
.formular {
  min-width: 0;
  margin: 0 0 24px;
  padding: 0;
  border: 0;
}
.formular legend {
  margin-bottom: 8px;
  padding: 0;
  color: #141a3d;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.3;
}

.formular-povinne {
  margin: 0 0 16px;
  color: #5c6285;
  font-size: 14px;
}

.formular-polia {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px 24px;
}

.pole {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}
.pole > label {
  color: #2c3150;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.3;
}

.pole-cela,
.pole-trojica,
.formular-odoslat {
  grid-column: 1/-1;
}

.pole-trojica {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px 24px;
}

.pole-riadok {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
}

.pole-vstup {
  width: 100%;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid #c0c0c0;
  border-radius: 8px;
  background-color: #ffffff;
  color: #141a3d;
  font: inherit;
  font-size: 16px;
  line-height: 1.4;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.pole-vstup:focus {
  border-color: #3f47cc;
  outline: none;
  box-shadow: 0 0 0 3px #dfe1ff;
}

textarea.pole-vstup {
  min-height: 120px;
  resize: vertical;
}

.pole-vstup.pole-kratke {
  width: 120px;
}

.pole-chyba {
  color: #b90000;
  font-size: 14px;
  line-height: 1.4;
}
.pole-chyba::before {
  content: "!";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  margin-right: 6px;
  border-radius: 50%;
  background-color: #b90000;
  color: #ffffff;
  font-size: 11px;
  font-weight: 700;
  vertical-align: -2px;
}

.pole:has(.pole-chyba:not([style*="display:none"]):not([style*="display: none"])) .pole-vstup {
  border-color: #dd0000;
}

.pole-zaskrt {
  display: inline-flex;
  align-items: flex-start;
  gap: 10px;
}
.pole-zaskrt input {
  flex: none;
  width: 20px;
  height: 20px;
  margin: 2px 0 0;
  accent-color: #3f47cc;
  cursor: pointer;
}
.pole-zaskrt label {
  cursor: pointer;
}

.formular-hlasenie {
  display: block;
  padding: 12px 16px;
  border-radius: 8px;
  background-color: #f8e0da;
  color: #b90000;
  font-size: 15px;
}

.formular-hlasenie:empty {
  display: none;
}

input.tlacidlo,
button.tlacidlo {
  border: 0;
  font: inherit;
  font-weight: 600;
  cursor: pointer;
}

input.tlacidlo-obrys,
button.tlacidlo-obrys {
  border: 2px solid #3f47cc;
}

.formular-odoslat {
  margin-top: 8px;
}

@media (max-width: 799px) {
  .formular-polia,
  .pole-trojica {
    grid-template-columns: minmax(0, 1fr);
  }
  .formular-odoslat .tlacidlo {
    width: 100%;
  }
}
/* kontakt */
.kontakt-mriezka {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: 32px;
  align-items: start;
  margin-bottom: 32px;
}

.kontakt-uvod {
  margin: 0 0 12px;
}

.kontakt-karta {
  padding: 20px;
  border: 1px solid #d9ddee;
  border-top: 3px solid #3f47cc;
  border-radius: 10px;
  background-color: #ffffff;
  padding: 24px;
}
.kontakt-karta h2 {
  margin: 0 0 16px;
  padding: 0;
  font-size: 20px;
  line-height: 1.3;
}
.kontakt-karta h2::before {
  content: none;
}
.kontakt-karta p {
  margin: 0 0 12px;
}
.kontakt-karta p:last-child {
  margin-bottom: 0;
}

@media (max-width: 799px) {
  .kontakt-mriezka {
    grid-template-columns: minmax(0, 1fr);
  }
}
/* objednavky - obal fakturacnej adresy (div kos_anonym si nechava staru triedu regfir, ktoru pouzivaju aj ine stranky) */
.regfir.formular-obal {
  clear: both;
  float: none;
  width: auto;
  margin-top: 24px;
  font-size: 16px;
  font-weight: 400;
}

.kosik-suma {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  width: auto;
  max-width: 420px;
  margin: 16px 0;
  padding: 14px 20px;
  border-radius: 12px;
  background-color: #f4f5fd;
  box-shadow: none;
  line-height: 1.3;
  text-align: left;
}
.kosik-suma strong {
  color: #141a3d;
  font-size: 22px;
}

.kosik-suma-text {
  float: none;
  padding-left: 0;
  color: #5c6285;
  font-weight: 600;
}

.obalsuma {
  float: none;
  line-height: 1.3;
}

/* pokladnice - pocet a doplnkova sluzba */
.pokladne-vypocet {
  display: grid;
  grid-template-areas: "obr pocet" "obr sluzba";
  grid-template-columns: 120px minmax(0, 1fr);
  gap: 12px 24px;
  align-items: center;
}

.pokladne-obr {
  grid-area: obr;
  width: 120px;
  height: auto;
}

.pokladne-vypocet > .pole {
  grid-area: pocet;
}

.pokladne-vypocet > .pole-zaskrt {
  grid-area: sluzba;
}

/* pokladnice - pokyny a polia seriovych cisel. Polia, vodoznaky a validatory vytvara C#:
   div.panel-sn > input.tb-sn (TB_SN{i}, TB_KP{i}; pri prazdnej hodnote vodoznak nahradi triedu za wtb-sn),
   skryte ClientState vodoznakov a span.val-left (RequiredFieldValidator_SN{i} / _KP{i}). */
.obalsn {
  margin: 24px 0;
}

.sn {
  padding: 20px 24px;
  border: 1px solid #d9ddee;
  border-radius: 12px;
  background-color: #f7f7f7;
}
.sn ul {
  margin: 8px 0 16px;
  padding-left: 20px;
}

.panel-sn {
  display: grid;
  grid-template-areas: "sn kp" "chyba-sn chyba-kp";
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 4px 16px;
  margin-top: 12px;
}
.panel-sn [id*=_TB_SN] {
  grid-area: sn;
}
.panel-sn [id*=_TB_KP] {
  grid-area: kp;
}
.panel-sn [id*=RequiredFieldValidator_SN] {
  grid-area: chyba-sn;
}
.panel-sn [id*=RequiredFieldValidator_KP] {
  grid-area: chyba-kp;
}

.tb-sn,
.wtb-sn {
  width: 100%;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid #c0c0c0;
  border-radius: 8px;
  background-color: #ffffff;
  color: #141a3d;
  font: inherit;
  font-size: 16px;
  line-height: 1.4;
}
.tb-sn:focus,
.wtb-sn:focus {
  border-color: #3f47cc;
  outline: none;
  box-shadow: 0 0 0 3px #dfe1ff;
}

.wtb-sn {
  color: #5c6285;
}

.val-left {
  color: #b90000;
  font-size: 14px;
  line-height: 1.4;
}

/* pokladnice - ponuka novych zariadeni (asp:Accordion); len v .obalbuy, accordionHeader pouziva aj e-shop */
.obalbuy {
  margin: 24px 0;
}
.obalbuy .accordionHeader,
.obalbuy .accordionHeaderSelected {
  padding: 14px 20px;
  border: 1px solid #b3b7ff;
  border-radius: 12px;
  background: #f4f5fd;
  color: #141a3d;
  text-align: left;
  text-transform: none;
  cursor: pointer;
}
.obalbuy .accordionHeaderSelected {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.obalbuy .accordionContent {
  padding: 16px;
  border: 1px solid #b3b7ff;
  border-top: 0;
  border-radius: 0 0 12px 12px;
}

.obal-buylist {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 16px;
}

.buylist,
.buylist1 {
  overflow: hidden;
  border: 1px solid #d9ddee;
  border-radius: 12px;
  background-color: #ffffff;
}
.buylist a,
.buylist1 a {
  display: flex;
  flex-direction: column;
  height: 100%;
  color: #2c3150;
  text-decoration: none;
}
.buylist img,
.buylist1 img {
  width: 100%;
  height: auto;
}

.title-buy {
  padding: 8px 12px;
  background-color: #3f47cc;
  color: #ffffff;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
}

.buytitle {
  padding: 12px 12px 0;
  color: #141a3d;
  font-weight: 700;
}

.buyimg {
  padding: 8px 12px;
}

.buysuma {
  margin-top: auto;
  padding: 0 12px 12px;
  font-size: 14px;
}

.buycena {
  color: #5c6285;
  text-decoration: line-through;
}

.buyakcia {
  color: #b90000;
  font-size: 18px;
  font-weight: 700;
}

.buypraca {
  color: #5c6285;
}

@media (max-width: 799px) {
  .pokladne-vypocet {
    grid-template-areas: "obr pocet" "sluzba sluzba";
    grid-template-columns: 80px minmax(0, 1fr);
  }
  .pokladne-obr {
    width: 80px;
  }
  .panel-sn {
    grid-template-areas: "sn" "chyba-sn" "kp" "chyba-kp";
    grid-template-columns: minmax(0, 1fr);
  }
}
/* prihlasenie */
.formular-uzky {
  max-width: 360px;
  margin-inline: auto;
}
.formular-uzky .formular-polia {
  grid-template-columns: minmax(0, 1fr);
}

/* detail produktu - pocet kusov a tlacidlo (stare .det-kosik / .det-kosik-obal pouziva aj e-shop) */
.det-kosik-obal {
  clear: both;
  float: none;
  min-width: 0;
  margin: 16px 0;
}

.det-kosik.pole-riadok {
  float: none;
  width: auto;
  align-items: flex-end;
  line-height: 1.4;
  font-weight: 400;
}

/* dialog po odoslani (MyMessageBox: ModalPopupExtender, panel .upozornenie, pozadie .modalBackground);
   rovnake triedy pouziva aj rozpracovany e-shop (MyControls/eshop) */
.modalBackground {
  background-color: rgba(0, 4, 85, 0.6);
}

.upozornenie {
  width: calc(100vw - 32px);
  max-width: 480px;
  padding: 24px;
  border-radius: 12px;
  background-color: #ffffff;
  box-shadow: 0 20px 48px rgba(0, 4, 85, 0.25);
  color: #2c3150;
  font-size: 16px;
  line-height: 1.6;
}
.upozornenie p {
  margin: 0 0 12px;
}

.dialog-tlacidla {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 20px;
}

.button1 {
  display: inline-block;
  padding: 12px 22px;
  border: 0;
  border-radius: 8px;
  background-color: #3f47cc;
  color: #ffffff;
  font: inherit;
  font-weight: 600;
  cursor: pointer;
}
.button1:hover, .button1:focus-visible {
  background-color: #121895;
}

.cennik-stranka {
  display: flex;
  flex-direction: column;
  gap: 24px;
  clear: both;
  margin-bottom: 24px;
  font-size: 16px;
  line-height: 1.5;
}
.cennik-stranka input[type=checkbox],
.cennik-stranka input[type=radio] {
  flex: none;
  width: 20px;
  height: 20px;
  margin: 0 8px 0 0;
  accent-color: #1c25c3;
  vertical-align: -4px;
  cursor: pointer;
}
.cennik-stranka input[type=checkbox]:focus-visible,
.cennik-stranka input[type=radio]:focus-visible {
  outline: 2px solid #1c25c3;
  outline-offset: 2px;
}
.cennik-stranka label {
  cursor: pointer;
}
.cennik-stranka .cennik-karta,
.cennik-stranka .cennik-box,
.cennik-stranka .cennik-box-disabled {
  padding: 20px;
  border: 1px solid #d9ddee;
  border-top: 3px solid #3f47cc;
  border-radius: 10px;
  background-color: #ffffff;
  float: none;
  width: auto;
  font-size: 16px;
}
.cennik-stranka .cennik-box {
  padding: 20px 19px 19px;
  border: 2px solid #3f47cc;
  border-top-width: 3px;
  background-color: #f4f5fd;
}
.cennik-stranka .aspNetDisabled {
  opacity: 0.55;
}
.cennik-stranka .aspNetDisabled input,
.cennik-stranka .aspNetDisabled label {
  cursor: not-allowed;
}
.cennik-stranka .box_zaklad1,
.cennik-stranka .box_zaklad2,
.cennik-stranka .box_zaklad1-disabled,
.cennik-stranka .box_zaklad2-disabled {
  margin-top: 12px;
}
.cennik-stranka .box_zaklad1-disabled,
.cennik-stranka .box_zaklad2-disabled {
  color: #5c6285;
}
.cennik-stranka .cennik-volba {
  display: flex;
  flex-wrap: wrap;
  align-self: flex-start;
  gap: 4px;
  margin: 0;
  padding: 4px;
  border: 1px solid #dfe1ff;
  border-radius: 999px;
  background-color: #f4f5fd;
  list-style: none;
}
.cennik-stranka .cennik-volba li {
  position: relative;
  margin: 0;
  padding: 0;
}
.cennik-stranka .cennik-volba input {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: 0;
  opacity: 0;
}
.cennik-stranka .cennik-volba label {
  display: block;
  padding: 10px 20px;
  border-radius: 999px;
  color: #121895;
  font-weight: 600;
}
.cennik-stranka .cennik-volba li:has(:checked) label {
  background-color: #1c25c3;
  color: #ffffff;
}
.cennik-stranka .cennik-volba li:has(:focus-visible) label {
  outline: 2px solid #1c25c3;
  outline-offset: 2px;
}

@media (min-width: 1024px) {
  .cennik-stranka:has(> [id$=_PN_balik] + [id$=_PN_blok]) {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .cennik-stranka:has(> [id$=_PN_balik] + [id$=_PN_blok]) > * {
    grid-column: 1/-1;
  }
  .cennik-stranka:has(> [id$=_PN_balik] + [id$=_PN_blok]) > [id$=_PN_balik],
  .cennik-stranka:has(> [id$=_PN_balik] + [id$=_PN_blok]) > [id$=_PN_blok] {
    grid-column: auto;
  }
  .cennik-stranka:has(> [id$=_PN_balik] + [id$=_PN_blok]) > .cennik-volba {
    justify-self: start;
  }
}
.cennik-nadpis {
  margin: 0 0 12px;
  padding: 0;
  border: 0;
  color: #141a3d;
  font-size: 20px;
  line-height: 1.3;
}

.cennik-medzinadpis {
  margin: 16px 0 0;
  padding: 0;
  border: 0;
  color: #141a3d;
  font-size: 22px;
  line-height: 1.3;
}

.cennik-podnadpis {
  margin: 20px 0 10px;
  color: #141a3d;
  font-size: 17px;
  line-height: 1.3;
}

.cennik-uvod {
  margin: 12px 0 0;
  color: #5c6285;
}

.cennik-nadpis + .cennik-uvod {
  margin: 0 0 12px;
}

.cennik-tabulka th,
.cennik-tabulka td {
  vertical-align: middle;
}
.cennik-tabulka tbody tr:last-child > * {
  border-bottom: 0;
}
.cennik-tabulka td {
  padding-left: 8px;
  color: #141a3d;
  font-weight: 600;
  text-align: right;
  white-space: nowrap;
}
.cennik-tabulka .cennik-stlpec {
  width: 96px;
  padding-left: 8px;
  text-align: right;
}
.cennik-tabulka .pole-vstup {
  width: 64px;
  min-height: 40px;
  padding: 6px 8px;
  text-align: right;
}

.cennik-tabulka th[scope=row] {
  padding-right: 12px;
  color: #141a3d;
}
.cennik-tabulka th[scope=row] label {
  cursor: default;
}

.cennik-pocet {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.cennik-polozky {
  margin: 0;
  padding: 0;
  list-style: none;
}

.cennik-polozka {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px 16px;
  padding: 12px 0;
  border-bottom: 1px solid #eeeeee;
}
.cennik-polozka:first-child {
  padding-top: 0;
}
.cennik-polozka:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.cennik-polozka-text {
  min-width: 0;
  color: #141a3d;
}

.cennik-pozn {
  display: block;
  margin: 4px 0 0;
  color: #5c6285;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.45;
}

input + label + .cennik-pozn {
  margin-left: 28px;
}

.cennik-cena {
  flex: none;
  color: #141a3d;
  font-weight: 700;
  white-space: nowrap;
}

.cennik-velka-cena {
  margin: 0;
  color: #141a3d;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.1;
}

.cennik-velka-cena-pozn {
  color: #5c6285;
  font-size: 15px;
  font-weight: 400;
}

.cennik-funkcie {
  margin: 0;
  padding: 0;
  list-style: none;
}
.cennik-funkcie li {
  position: relative;
  margin-bottom: 10px;
  padding-left: 32px;
}
.cennik-funkcie li::before {
  content: "";
  position: absolute;
  top: 3px;
  left: 0;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #fff1d1;
}
.cennik-funkcie li::after {
  content: "";
  position: absolute;
  top: 7px;
  left: 7px;
  width: 6px;
  height: 10px;
  border: solid #7a4f00;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.cennik-funkcie li:last-child {
  margin-bottom: 0;
}

.cennik-plany {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.cennik-plan {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.cennik-plan .cennik-nadpis {
  margin: 0;
}
.cennik-plan .cennik-velka-cena {
  margin-top: auto;
}

.cennik-plan:has(:checked),
.cennik-moznost:has(> .cennik-polozka :checked) {
  padding: 20px 19px 19px;
  border: 2px solid #3f47cc;
  border-top-width: 3px;
  background-color: #f4f5fd;
}

.cennik-moznost > .cennik-polozka {
  padding: 0;
  border: 0;
}

.cennik-rozpis dl {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px 16px;
  margin: 0;
}
.cennik-rozpis dt {
  color: #5c6285;
}
.cennik-rozpis dd {
  margin: 0;
  color: #141a3d;
  font-weight: 700;
  text-align: right;
  white-space: nowrap;
}

.cennik-suma {
  position: sticky;
  bottom: var(--suhlas-vyska, 0);
  z-index: 5;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 12px;
  padding: 14px 20px;
  border-radius: 8px;
  background-color: #000455;
  box-shadow: 0 -4px 16px rgba(0, 4, 85, 0.25);
  color: #ffffff;
}

.cennik-suma-nazov {
  font-weight: 600;
}

.cennik-suma-cena {
  color: #ffc92e;
  font-size: 22px;
  font-weight: 700;
  white-space: nowrap;
}

.cennik-suma-pozn {
  color: #dfe1ff;
  font-size: 14px;
}

html:has(.cennik-suma) {
  scroll-padding-bottom: 88px;
}

@media (max-width: 799px) {
  .cennik-stranka .cennik-karta,
  .cennik-stranka .cennik-box-disabled {
    padding: 16px;
  }
  .cennik-stranka .cennik-box,
  .cennik-plan:has(:checked),
  .cennik-moznost:has(> .cennik-polozka :checked) {
    padding: 16px 15px 15px;
  }
  .cennik-tabulka .cennik-stlpec {
    width: 84px;
  }
  .cennik-plany {
    grid-template-columns: minmax(0, 1fr);
  }
  .cennik-polozka {
    flex-direction: column;
  }
  .cennik-polozka:has(input) .cennik-cena {
    padding-left: 28px;
  }
  .cennik-suma {
    padding: 12px 16px;
  }
}
.suhlas {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 900;
  padding: 12px 0;
  border-top: 3px solid #3f47cc;
  background-color: #ffffff;
  box-shadow: 0 -4px 16px rgba(0, 4, 85, 0.15);
  color: #333333;
  font-size: 14px;
  line-height: 1.5;
}

.suhlas-obsah {
  display: flex;
  align-items: center;
  gap: 12px 32px;
}

.suhlas-text {
  flex: 1;
  min-width: 0;
}
.suhlas-text p {
  margin: 0;
}
.suhlas-text a {
  color: #121895;
  font-weight: 600;
  text-decoration: underline;
}

.suhlas-nadpis {
  margin: 0 0 2px;
  padding: 0;
  border: 0;
  color: #242424;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.3;
}

.suhlas-tlacidla {
  display: flex;
  flex: none;
  gap: 8px;
}

html:has(.suhlas):not(:has(.sukromie)) {
  --suhlas-vyska: 140px;
  scroll-padding-bottom: var(--suhlas-vyska);
}

html:has(.suhlas):has(.cennik-suma) {
  scroll-padding-bottom: calc(var(--suhlas-vyska) + 88px);
}

body:has(.suhlas) {
  padding-bottom: var(--suhlas-vyska, 0);
}

body:has(.sukromie) .suhlas {
  display: none;
}

@media (max-width: 799px) {
  .suhlas {
    font-size: 13px;
  }
  .suhlas-obsah {
    flex-direction: column;
    align-items: stretch;
  }
  .suhlas-tlacidla {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .suhlas-tlacidla .tlacidlo {
    width: 100%;
    padding-inline: 12px;
  }
  .suhlas-tlacidla .tlacidlo-obrys {
    grid-column: 1/-1;
  }
  html:has(.suhlas):not(:has(.sukromie)) {
    --suhlas-vyska: 264px;
  }
}
.sukromie {
  clear: both;
  margin-bottom: 24px;
  font-size: 16px;
  line-height: 1.6;
}

.sukromie-obsah {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.sukromie-uvod {
  margin: 0;
  color: #535353;
}

.sukromie-karta {
  padding: 20px;
  border: 1px solid #d9ddee;
  border-top: 3px solid #3f47cc;
  border-radius: 10px;
  background-color: #ffffff;
}
.sukromie-karta p,
.sukromie-karta ul {
  margin: 0 0 12px;
}
.sukromie-karta ul {
  padding-left: 20px;
}
.sukromie-karta > :last-child {
  margin-bottom: 0;
}

.sukromie-nadpis {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  margin: 0 0 12px;
  padding: 0;
  border: 0;
  color: #242424;
  font-size: 20px;
  line-height: 1.3;
}

.sukromie-stitok {
  padding: 2px 10px;
  border-radius: 999px;
  background-color: #dcf1e3;
  color: #1d6b3a;
  font-size: 13px;
  font-weight: 600;
}

.sukromie-volba {
  width: fit-content;
  display: flex;
  flex-wrap: wrap;
  align-self: flex-start;
  gap: 4px;
  margin: 0;
  padding: 4px;
  border: 1px solid #dfe1ff;
  border-radius: 999px;
  background-color: #f4f5fd;
  list-style: none;
}
.sukromie-volba li {
  position: relative;
  margin: 0;
  padding: 0;
}
.sukromie-volba input {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: 0;
  opacity: 0;
}
.sukromie-volba label {
  display: block;
  padding: 10px 20px;
  border-radius: 999px;
  color: #121895;
  font-weight: 600;
}
.sukromie-volba li:has(:checked) label {
  background-color: #1c25c3;
  color: #ffffff;
}
.sukromie-volba li:has(:focus-visible) label {
  outline: 2px solid #1c25c3;
  outline-offset: 2px;
}

.sukromie-ulozit {
  margin: 0;
}

.sukromie-hlasenie {
  padding: 12px 16px;
  border-radius: 8px;
  background-color: #dcf1e3;
  color: #1d6b3a;
  font-weight: 600;
}

.sukromie-hlasenie:empty {
  display: none;
}
