:root {
  --header-bgcolor: transaparent;
  --header-height: 40px;
  --logo-top: 15px;
  --logo-left: 15px;
  --logo-width: 100px;
  --notifier-right: 0px;
  --tabulator-left: 125px;
  --tabulator-right: 250px;
  --menu-top: 38px;
  --content-top: 40px;
  --content-left: 0px;
  --content-right: 0px;
  --content-bottom: 0px;
  --button-font-size: 1.3em;
  --otp-qrcode-width: 28em;
  --otp-qrcode-height: 30em;
  --otp-qrcode-bgcolor: #ffffff;
  --otp-qrcode-border: 1px solid #cccccc;
  --otp-qrcode-padding: 1em;
  --otp-qrcode-font-size: 1.3em;
  --otp-width: 15em;
  --otp-height: 8em;
  --otp-bgcolor: #f8f8f8;
  --otp-border: 1px solid #cccccc;
  --otp-padding: 1em;
  --app-qrcode-width: 40em;
  --app-qrcode-height: 35em;
  --app-qrcode-bgcolor: #ffffff;
  --app-qrcode-border: 1px solid #cccccc;
  --app-qrcode-padding: 1em;
  --app-qrcode-font-size: 1.3em;
}

iframe      {
  position: absolute;
  margin: 0;
  padding: 0;
  overflow: hidden hidden;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  border: 0px solid black;
  border-top: none;
}

.logo {
  position: absolute;
  top: var(--logo-top);
  left: var(--logo-left);
  cursor: pointer;
  width: var(--logo-width);
}

.notifier {
  font-size:1.2em;
  position: absolute;
  top: 15px;
  right: var(--notifier-right);
  width: auto;
  bottom: 5px;
  z-index: 99;
}

.header {
  position: absolute;
  margin: 0;
  padding: 0;
  overflow: hidden hidden;
  background-color: var(--header-bgcolor);
  top: 0px;
  left: 0px;
  width: 100%;
  height: var(--header-height);
  border: 0px solid black;
  user-select: none;
}

.content {
  position: absolute;
  margin: 0;
  padding: 0;
  overflow: hidden hidden;
  top: var(--content-top);
  left: var(--content-left);
  right: var(--content-right);
  bottom: var(--content-bottom);
  user-select: none;
  background-color: white;
  border-top: 0px solid rgb(80,80,80);
}

.tabulator {
  position: absolute;
  left: var(--tabulator-left);
  right: var(--tabulator-right);
  top: 10px;
  bottom: 0px;
  background-color: var(--header-bgcolor);
}

.menu {
  position: absolute;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  display: flex;
  flex-wrap: wrap; 
  top: var(--menu-top);
  left: 6px;
  right: 6px;
  height: auto;
  max-height: 90%;
  background-color: white;
  margin: 0 auto;
  padding: 10px;
  z-index: 999;
  overflow: hidden;
  user-select: none;
  visibility: hidden;
  border-top: 2px solid red;
}

.menuCaption {
  font-weight: 500;
  color: var(--teq-ui-tabulator-item-selected-color);
  font-size: 1.2em;
}

.menuCell {
    /* flex-grow: 1 (espanditi), flex-shrink: 1 (restringiti), flex-basis: 150px (dimensione base) */
    flex-grow: 0;
    flex-shrink: 1;
    padding: 5px;
    margin: 3px;
    min-width:11em;
    margin-bottom: 1em;
}

.menuElement {
  margin-top: 0.5em;
  font-size: 0.9em;
  color: var(--teq-ui-tabulator-item-color);
  cursor: pointer;
}

.menuElement:hover {
  font-weight: 500;
  color: var(--teq-ui-tabulator-item-selected-color);
  text-decoration: underline;
  text-decoration-color: red;
}

.otpQrcode {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: none;
  flex-direction: column;
  justify-content: space-between;
  align-items: center; width: var(--otp-qrcode-width);
  height: var(--otp-qrcode-height);
  padding: var(--otp-qrcode-padding);
  background-color: var(--otp-qrcode-bgcolor);
  border: var(--otp-qrcode-border);
  border-radius: 5px;
  user-select: none;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
}

.otpQrcode span {
  font-size: var(--otp-qrcode-font-size);
  text-align: center;
}

.otpQrcode button {
  text-align: center;
  width: 100%;
  font-size: var(--button-font-size);
}

.otp {
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: var(--otp-width);
  height: var(--otp-height);
  padding: var(--otp-padding);
  background-color: var(--otp-bgcolor);
  border: var(--otp-border);
  border-radius: 5px;
  user-select: none;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
}

.otp input {
  width: 100%; 
  margin-bottom: var(--otp-padding);
  background-color: transparent;
  border: transparent;
  border-bottom: var(--otp-border);
  font-size: var(--button-font-size);
}

.otp button {
  text-align: center;
  width: 100%;
}

.otpQrcode button {
  text-align: center;
  width: 100%;
  font-size: var(--button-font-size);
}

.appQrcode {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: none;
  flex-direction: column;
  justify-content: space-between;
  align-items: center; width: var(--app-qrcode-width);
  height: var(--app-qrcode-height);
  padding: var(--app-qrcode-padding);
  background-color: var(--app-qrcode-bgcolor);
  border: var(--app-qrcode-border);
  border-radius: 5px;
  user-select: none;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
}

.appQrcode span {
  font-size: var(--app-qrcode-font-size);
  text-align: center;
}

.appQrcode button {
  text-align: center;
  width: 100%;
  font-size: var(--button-font-size);
}
 
.appQrcodeCountdown {
  position: absolute;
  bottom: 50px;
  right: 20px;
  font-size: var(--button-font-size);
}