/* project name styling for about pages & manuals */
/** UMIME name styling **/
.umime-name::before {
    font-weight: bold;
    content: "Umíme to";
    color: #2c3e50;
    border-bottom-color: #fac642;
    border-bottom-style: solid;
    border-width: 0.5px;
}

/** VIEME name styling **/
.vieme-name::before {
    font-weight: bold;
    content: "Vieme to";
    color: #2c3e50;
    border-bottom-color: #fac642;
    border-bottom-style: solid;
    border-width: 0.5px;
}

/** UMIEMY name styling **/
.umiemy-name::before {
    font-weight: bold;
    content: "Umiemy to";
    color: #2c3e50;
    border-bottom-color: #fac642;
    border-bottom-style: solid;
    border-width: 0.5px;
}

/** ZNAIEMO name styling **/
.znaiemo-name::before {
    font-weight: bold;
    content: "Знаємо";
    color: #2c3e50;
    border-bottom-color: #fac642;
    border-bottom-style: solid;
    border-width: 0.5px;
}

/* buttons */


.tlacitko{
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 5px;
  cursor: pointer;
  border-radius: 3px;
  font-family: inherit;
  line-height: inherit;

  /* these are rewritten anyway; just in case anywhere is an old colored button */
  background: var(--gray);
  color: var(--black);
}

a.tlacitko{ color:white; }

.tlacitko:hover{
  color:white;
  text-decoration: none;
}

.tlacitko.giga{
  display: flex;
  align-items: center;
  justify-content: flex-start;

  padding:0px 20px;
  font-size: 18px;
  font-weight: 400;
  width: auto;
  margin:5px;
  margin-bottom: 20px;
}

.tlacitko.large{
  padding:10px 30px;
  font-size: 18px;
  font-weight: 400;
}

.tlacitko.medium{
  padding: 6px 12px;
  font-size: 16px;
}

.tlacitko.smaller-padding {
  padding: 4px 8px;
}

.tlacitko.small{
  padding: 2px 8px;
  line-height: 20px;
  font-size: 14px;
}

.tlacitko.margin10{ margin: 10px; }
.tlacitko.margin20{ margin: 20px; }
.tlacitko.tmargin20{ margin-top: 20px; }
.tlacitko.tmargin50{ margin-top: 50px; }
.tlacitko.rmargin10{ margin-right: 10px; }
.tlacitko.lmargin10{ margin-left: 10px; }
.tlacitko.marginLeft10{ margin-left: 10px; }

.tlacitko.nomargin{
  margin:0px;
}

.tlacitko.wide{
  padding:10px 14px;
  font-size: 16px;
  display: inline-block;
  width: 100%;
  text-align: center;
}


.tlacitko.primary {
  background-color: var(--blue);
  border: 1px solid var(--blueHover);
  color: white;
}

.tlacitko.primary:hover {
  background-color: var(--blueHover);
  border-color: var(--blueHoverBorder);
}

.tlacitko.secondary, .tlacitko.navigation, .tlacitko.danger, .tlacitko.disabled, .tlacitko.disabled:hover, .badge-button {
  color: var(--blueHover);
  border: 1px solid var(--lightGrayHover);
  background-color: var(--lightGray);
}

.tlacitko.secondary:hover, .tlacitko.navigation:hover, .tlacitko.danger:hover, .badge-button:hover, .button-help:focus {
  background: var(--lightGrayHover);
  border-color: var(--gray);
}

#exercise .tlacitko.secondary:not(.secondary-box .tlacitko.secondary), #exercise .tlacitko.navigation:not(.secondary-box .tlacitko.navigation), #exercise .tlacitko.danger:not(.secondary-box .tlacitko.danger) {
  background-color: white; border: 1px solid var(--gray)
}

#exercise .tlacitko.disabled:not(.secondary-box .tlacitko.disabled), #exercise .tlacitko.disabled:hover:not(.secondary-box .tlacitko.disabled:hover) {background-color: var(--faintGray);}

#exercise .tlacitko.secondary:hover:not(.secondary-box .tlacitko.secondary:hover), #exercise .tlacitko.navigation:hover:not(.secondary-box .tlacitko.navigation:hover), #exercise .tlacitko.danger:hover:not(.secondary-box .tlacitko.danger:hover) {
  background-color: var(--faintGray);
}

.tlacitko.navigation, .tlacitko.navigation:hover, #exercise .tlacitko.navigation {color: var(--black);}
.tlacitko.danger, .tlacitko.danger:hover, #exercise .tlacitko.danger {color: var(--red);}
.tlacitko.bigDanger{ color: white; background-color: var(--red); border: 1px solid var(--redHover);}
.tlacitko.bigDanger:hover{background-color:var(--redHover); border: 1px solid var(--redHoverBorder); color:white; }
.tlacitko.disabled, .tlacitko.disabled:hover {color: var(--gray); cursor: default;}
/* the disabled attribute means the same thing as .disabled here, but colours are left to the button's own state (e.g. .homework-present) */
.tlacitko:disabled, .tlacitko:disabled:hover {cursor: default;}

.tlacitko.secondary.selected, .tlacitko.secondary.selected:hover {background-color: var(--black) !important; border-color: var(--black); color: var(--white);}

.tlacitko.secondary.selected > .button-image, .tlacitko.secondary.selected:hover .button-image {background-color: white;}

/******************* obrázek v tlačítku ********************************/

.button-image {
  display: block;
  width: 23px;
  height: 23px;
  mask-size: contain;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  background-size: contain;
}

.tlacitko.primary .button-image, .tlacitko.selected .button-image {background-color: var(--white) !important;}
.tlacitko.secondary .button-image {background-color: var(--blueHover)}
.tlacitko.secondary:disabled .button-image, .tlacitko.secondary:disabled:hover .button-image {background-color: var(--gray)}
.tlacitko.danger .button-image {background-color: var(--redHover)}
.tlacitko.secondary:hover .button-image, .button-help:hover .icon-help, .button-help:focus .icon-help {background-color: var(--blueHover)}

.tlacitko.navigation .button-image {background-color: var(--black)}

.button-help {
  border-radius: 50%;
  padding: 2px;
}

.button-help .icon-help {
  width: 21px;
  height: 21px;
  background: var(--blueHover);
  -webkit-mask-image: url('https://www.umimeto.org/asset/global/img/icons-umime/icon-help.svg');
  mask-image: url('https://www.umimeto.org/asset/global/img/icons-umime/icon-help.svg');
  mask-size: contain;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
}

/* preview boxes */
.homepage-recommendations {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: calc(var(--unit) * 2.2);
  justify-content: flex-start;
}

.preview-box-png {    
  background-color: white;      
  border-radius:5px;
  padding:0px;
  margin-left: 5px;
  margin-right: 5px;
  margin-bottom: 30px;  
  text-align: left;  
  min-width: 300px;
  max-width: 300px;
  height: auto;
  aspect-ratio: 3/2;
  display: inline-block;  
  cursor: pointer;
  border: 1px solid var(--lightGrayHover);      
  box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.05);
  color: var(--black);     
  overflow:hidden;
  display: inline-grid;
  grid-template-columns: 100%; 
  /* 52px for header, rest for the rest… */
  grid-template-rows: 52px auto;
}

/* na hlavní stránku verze v recommendations boxu se zarovnaným okrajem; jinde zůstává kompatibilní s marginy (výše)  */
.homepage-recommendations .preview-box-png {
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 25px;
}

@media screen and (max-width: 550px) {
  .preview-box-png{    
    margin-bottom: 10px;
  }
}
.preview-box-png .upper-bar{
  padding: 0 5px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  background-color: var(--yellow);
  background-color: var(--faintYellow);  
  background-color: #F5F5F5;
  width: 100%;
}

.preview-box-png .upper-bar span{
  overflow: hidden; 
}

.preview-box-png .upper-bar.line{
  border-bottom: 1px solid var(--lightGrayHover);      
}

.preview-box-png.without-image .upper-bar {
  border-bottom: none;
}

/* legacy pngPreview header-only box (functionsMap.php), no preview image is rendered so the fixed aspect ratio would leave the box mostly empty */
.preview-box-png.without-image {
  aspect-ratio: unset;
  grid-template-rows: 52px;
}

.preview-box-png .upper-bar img{  
  height:35px; 
  margin:0px;
  margin-top:3px;
  margin-bottom:3px;
  flex-shrink: 0;
}

.preview-box-png .upper-bar medal img{  
  height: auto;
}
.preview-box-png .upper-bar medal{  
  flex-shrink: 0; margin-left: 10px;
}

.preview-box-png .upper-bar h3{  
  margin:0px;
  font-size: 15px;
  text-overflow: ellipsis; white-space: nowrap; overflow: hidden;
}

.preview-box-png .upper-bar p{    
  font-size: 13px;
  color: var(--grayHover);
  margin:0px;
  margin-top:1px;
  line-height: 1em;
}

.preview-box-png medal.medium img{
  width: 25px;
  height: auto;
}

.preview-box-png img.png-preview-image{
  /* max-height: 220px; */
  /* height is defined by the card's aspect ratio */
  max-width: 100%;
  /* margin:5px 5px; */
  /* using margin shifted the images to the right */
  padding: 5px;
  margin-bottom: 0px;
  border-radius: 5px;
  display: block;  
}

.preview-box-png object{
  max-height: 220px;  
  max-width: 100%;  
  margin:5px 5px;
  margin-bottom: 0px;
  border-radius: 5px;
  display: block;    
}

.preview-box-png object img{
  margin:0px 0px;
}

.preview-box-png:hover{
  text-decoration: none;
  box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.12);
  border: 1px solid var(--gray);
  color: var(--black);
}

#content .preview-box{    
  background-color: white;
  border-radius:5px;
  padding:10px;
  text-align: center;  
  cursor: pointer;
  border: none;      
  box-shadow: 0px 0px 24px 0px rgba(0,0,0,0.05);
  color: var(--black);   
  max-height: 420px;
  overflow: hidden;
  position: relative;
  container-type: inline-size;
}


#content .preview-box ul:has(li:only-child){padding: 0;}

#content .preview-box li:only-child{    
  list-style-type: none;
}

.preview-box.fader::after {
    content: '';
    position: absolute;
    bottom: 0px;
    left: 0;
    width: 100%;
    height: 50px;
    background: linear-gradient(to bottom, transparent 0%, white 80%);
    display: block;
}

.preview-shadow {box-shadow: 0px 0px 24px 0px rgba(0,0,0,0.05);}


#content .preview-box h3{
  margin-top:20px;
}

#content .preview-box ul{    
  text-align: left;
}

#content .preview-box fade{
	display: block;
}

#content .preview-box code{    
  font-size: 14px;
}

#content .preview-box:hover{
  text-decoration: none;     
  box-shadow: 0px 0px 16px 0px rgba(0,0,0,0.12); 
}

.preview-box img{
  max-height: 180px;  
  max-width: 85%;  
  margin-block: 8px;
  /* border-radius: 5px; */
  display: block;
  margin-inline: auto;
}

#content .preview-box ul img{
  max-height: 50px;
  max-width: 85%;  
  margin:5px 5px;
  border-radius: 5px;
  display: block;
  margin: auto;
}

#content .preview-box .card{

  display: inline-block;  
  vertical-align: middle;     
  margin: 5px; 
  padding:10px; 
  min-width: 130px;
  margin-bottom:0px;
  margin-top:9px;  
  
  font-size: 18px;    
  font-weight: 400;        
  text-align: center;  
  background-color: white;
  color: var(--black);
      
  border: 1px solid #7f8c8d;
  border-radius:2px;

  /* NOVE ROZSIRENI NA BILOU */
  border-radius:6px;
  border: 2px solid white;
  margin: 10px;
  box-shadow: 0px 0px 32px 0px rgba(0,0,0,0.1);  
      
}

/* images formatting in content preview */
.img-inside-margin img {
  margin-top: calc(var(--unit) * 2);
}

/********************* switch-button, new version of "tabs" (these are not used anymore) ********************************/
.switch-button {
  display: inline-flex;
  align-items: center;
  padding: 7px 14px;
  text-align: center;
  text-decoration: none;
  color: var(--black); 
  background-color: var(--lightGray);
  border: 1px solid var(--lightGrayHover);
  white-space: nowrap;
  border-radius: 5px;
  cursor: pointer;
  font-size: inherit;
  font-family: inherit;
}

.switch-button.small {
  padding: 2px 8px;
  line-height: 20px;
}

.switch-button:hover {
  text-decoration: none;
  color: inherit;
  background: var(--lightGrayHover);
  border-color: var(--gray);
}

.switch-button.selected {
  color: white;
  background: var(--black);
  border: 1px solid var(--blackHover);
  font-weight: 700;
}


/*********************** TOGGLE ARROW **************************/
/* Small chevron marking a control that expands something below it (the "own interval" button of
   the period picker, the exercise-name label in the class-stats table). Drawn from two borders in
   currentColor so it always takes the text colour of the button it sits in — including the black
   .switch-button.selected state, where the text turns white. Points down closed, up when open. */
.toggle-arrow {
  flex: none;
  display: inline-block;
  width: 9px; height: 9px;
  border-right: 2px solid currentColor; border-bottom: 2px solid currentColor;
  transform: translateY(-2px) rotate(45deg);
  transition: transform 0.15s;
  padding-left: 3px;
  padding-right: 3px;
}
[aria-expanded="true"] > .toggle-arrow {transform: translateY(2px) rotate(225deg);}
.switch-button:has(> .toggle-arrow) {gap: calc(var(--unit));}



/* picker pills */
.pill-picker {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 2px 6px;
  background: var(--faintBlue);
  border: 1px solid var(--blue);
  border-radius: var(--unit);
}

.pill-picker-remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  padding: 1px;
  border-radius: 50%;
  background: transparent;
  color: var(--redHover);
  font-size: 20px;
  cursor: pointer;
  background: white;
}

.pill-picker-remove:hover {
  background: var(--blue);
  color: white;
}

.pill-picker-empty {
  color: var(--gray);
  margin-top: var(--unit);
}

.pill-picker-validity {
  /* Visually hidden, but still focusable/validatable by the browser */
  position: absolute;
  opacity: 0;
  height: 0;
  width: 0;
  padding: 0;
  border: 0;
  pointer-events: none;
}

/* accordion toggler */
.accordion-toggler {
  width: 100%;
  cursor: pointer;
  background-image: url('https://www.umimeto.org/asset/global/img/down-arrow.svg');
  background-position: right 20px center;
  background-repeat: no-repeat;
  background-size: 20px;
}

/* for accordion-toggler */
.arrow-down {
  background-image: url('https://www.umimeto.org/asset/global/img/up-arrow.svg');
}

/****************************** HIGHLIGHTING **********************************/
/* draws the eye to one row/item, e.g. the one a link pointed the user at */
.bg-yellow-fade {
  animation: highlight-fade 6s forwards;
}

/* rows with display:contents (grid tables) have no box to paint, so the cells carry the fade */
.bg-yellow-fade-cells > * {
  animation: highlight-fade 6s forwards;
}

@keyframes highlight-fade {
  0% {
    background-color: rgba(241, 196, 15, 0.25);
  }
  100% {
    background-color: transparent;
  }
}

/*********************** BADGE â†’ LABEL **************************/
.label {background: var(--faintGray);
  color: var(--black);
  padding: 4px 6px;
  border-radius: var(--unit);
  gap: calc(var(--unit) * 0.75);
  width: auto;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;}

.label.info{ color: var(--blue); }
.label.warning{ color: var(--orange); }
.label.success{ color: var(--green); }
.label.danger{ color: var(--red); }

.message-like-info { border: 1px solid var(--blue);
  color: #1a4866; background: white;}
.message-like-warning {border: 1px solid var(--orange);  
  color: #8c4c12; background: white;}

.label img, .statusicon {display: inline-block; text-align: center; width: 24px; height: 24px; vertical-align: middle;}
.statusicon.medium {width: 20px; height: 20px;}
.statusicon.small {width: 14px; height: 14px;}

/********************* LINE HEADER ********************************/
/* todo: refactor as a snippet */

#content .line-header{  
  display: flex;  
  align-items: center;
  justify-content: space-between; 
  width: 100%;  
  margin-top: 20px;
  margin-bottom: 10px;
}

#content .line-header .line{
  margin:0px 7px;
  height: 0px;
  border-top:2px solid var(--lightGrayHover);
  flex-basis: 30px;
  flex-grow: 1;
}

#content .line-header .line-new{
  position: relative;
  margin:0px 7px;
  height: 10px;
  flex-basis: 30px;
  flex-grow: 1;
}

#content .line-header .line-new::before{
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  right: 3px;
  border-top: 2px solid var(--lightGrayHover);
  transform: translateY(-50%);
}

#content .line-header .line-new::after{
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  width: 10px;
  height: 16px;
  transform: translateY(-50%);
  background-color: var(--lightGrayHover);
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 16'%3E%3Cpolyline points='1,1 9,8 1,15' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 16'%3E%3Cpolyline points='1,1 9,8 1,15' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
}

.line-header h1, .line-header h2, .line-header h3, .line-header p{  
  margin:0px; 
}


/* scroll top btn */

#scroll-top-btn {
  display: none;
  width: 3.5rem;
  height: 3.5rem;
  position: fixed;
  right: 1rem;
  bottom: 1rem;
  border-radius: 50%;
  background: var(--blue) url('https://www.umimeto.org/asset/global/img/icons/arrow-up-white.svg') center center no-repeat;
  border: 1px solid var(--blueHover);
  background-size: 1.3rem;
  cursor: pointer;
  z-index: 100;
  /* border: none; */
  transition: background-color 0.2s;
}

#scroll-top-btn:hover { background-color: var(--blueHover); }

/* close container button */
/* used on dashboards, TODO generalize */
.container-close-button {
  display: flex;
  width: 40px;
  height: 40px;
  background: url("https://www.umimeto.org/asset/global/img/icons-umime/icon-x.svg") center center no-repeat;
  background-size: 70%;
  border-radius: 50%;
  cursor: pointer;
  flex-shrink: 0;
}

.container-close-button:hover {
  background-color: var(--lightGray);
}

.container-close-button-positioned {
  float: right;
}

/********************** DROPDOWNS *****************************/
#content .dropdown {
    position: relative;
    display: inline-block;  
}

#content .dropdown-content{    
    display: none;
    position: absolute;    
    background-color: white;
    min-width: 260px;
    box-shadow: 0px 0px 16px 0px rgba(0,0,0,0.2);
    padding: 10px 16px;    
    z-index: 15;
    text-align: left;
    left:-30px;
    border-radius: 7px;   
}

#content .dropdown-content.wide {
  min-width: 360px;
  left: 50%;
  transform: translateX(-50%);  
}

#content .dropdown-content.center {
  left: 50%;
  transform: translateX(-50%);
}

@media (max-width: 1300px) {
  #content .item3 .dropdown-content.wide {
    transform: none;
    left: auto;
    right: 0;
  }
}

@media (max-width: 550px) {
  #content .dropdown {position: static;}

  #content .dropdown-content.wide {
    transform: none;
    margin: auto var(--unit);
    left: 0; right: 0;
  }
}

#content .dropdown-content.narrow {
  min-width: 160px;    
  padding: 0px 16px;    
  left:0px;
}

/* striktni left, pouzivam u segment control trida */
#content .dropdown-content.strictLeft {
    left:0px;    
    padding: 0px;
    background-color: transparent;
    box-shadow: 0px 0px 16px 0px rgba(0,0,0,0);
}

/* pro prave menu ucitel trochu jine nastaveni */ 
#content .dropdown-content.right {
    left:-140px;
}

#content .dropdown-content .divider{
  display: block;
  height: 0px;  
  margin:5px 0px;
  border-bottom: 1px solid #ecedee;
}

#content .dropdown-content img{  
  max-height:200px;  
  max-width: 100%;
}

#content .dropdown-content img.wide{  
  display: inline-block;
  max-height:200px;
  max-width: 100%;
  border:0px;
  margin-top:7px;
  border-radius: 5px;
  display: block;
}

.dropdown-align-left {
  left: 0 !important;
  transform: none !important;
}

#content .dropdown-content h3{
  margin:10px 0px;  
}

#content .dropdown-content p{
  margin:10px 0px;  
}

#content .dropdown:hover .dropdown-content{        
  display: block;
}


/* calendar -- activity or date interval selection */
#content .dot-day{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:24px;
  height:24px;
  border-radius:50%;
  font-size:13px;
}
#content .dot-day.small{
  background-color: #aed6f1;
  font-weight: bold;
}
#content .dot-day.medium{
  background-color: #5dade2;
  color: white;
  font-weight: bold;
}
#content .dot-day.large{
  background-color: var(--blue);
  color: white;
  font-weight: bold;
}
#content .dot-day.selected{
  border:2px solid var(--grayHover);
}
#content .dot-day[data-date]{
  cursor:pointer;
}
#content .dot-day.range-start,
#content .dot-day.range-end{
  border:2px solid var(--grayHover);
  font-weight:bold;
}
/* keeps the activity colour of the day visible, unlike a background tint */
#content .dot-day.in-range{
  box-shadow: inset 0 0 0 2px var(--grayHover);
}

/********************* BADGE BUTTON ********************************/

#content .badge-button{      
  display: inline-flex;
  justify-content: space-between;
  align-items:center;
  flex-wrap:nowrap;
  text-decoration: none;
  border-radius: 3px;
  padding: 1px 3px;
  color: var(--black);
  overflow: hidden;
}

#content .badge-button img, #content .tlacitko img, #content .badge-button div{  
  width: 24px;
  margin: 2px; /* TOP A STRANY */
}

.crystal-progress {display: flex; flex-direction: column; width: 24px; height: 24px; justify-content:flex-end; background: url("https://www.umimeto.org/asset/global/img/badges/crystal-blue-nav-demo.svg") top center no-repeat;}

.yellow .crystal-progress {background-image: url("https://www.umimeto.org/asset/global/img/badges/crystal-yellow-nav-demo.svg");}
#content .badge-button.violet .crystal-progress {background: url("https://www.umimeto.org/asset/global/img/badges/trophy-nav.svg") top center no-repeat; background-size: contain;}

.badge-button:not(.without-text) > span:first-of-type{
  width: 68px;
  padding: 0 10px;
  text-align: center;}

.crystal-progress span, #content .badge-button .level-progress span {border: 1.5px solid var(--black); width: 100%; height: 6px; display: block; border-radius: 1.5px; overflow: hidden; background-color: var(--lightGray); padding: 0; margin: 0;}

.crystal-progress span span, #content .badge-button .level-progress span span {display: block; background-color: var(--blue); height: 100%; border: none; border-right: 1px solid var(--blueHover); border-radius: 0; }

.yellow .crystal-progress span span {background: var(--yellow); border-right: 1px solid var(--orange);}

.badge-button .level-progress, .badge-button .level-progress-steps {display: flex; align-items: center; flex-direction: column;}
.badge-button .level-progress img, .badge-button .level-progress-steps img {padding: 0; margin: 0 !important; height: 19px; width: auto;}
#content .badge-button .level-progress span span {background: var(--violet); border-right: 1px solid var(--violetHover);}

#content .badge-button .level-progress-steps span {width: 100%; height: 6px; display: block; background-color: var(--lightGray); padding: 0; margin: 0;}
.badge-button .level-progress-steps table td {height: 6px;}
.badge-button .level-progress-steps table {overflow: hidden; border: none; border-radius: 1.5px;}

.badge-button .button-table-wrapper {margin-right: 5px; min-width: 75px; display: flex; align-items: flex-start;}
.badge-button .button-table-wrapper-inner {border-radius: 3px; border: 1.5px solid var(--black); overflow: hidden; padding: 0 !important; margin: 0 !important; width: auto !important;}
.badge-button table {padding: 0; margin: 0; border-collapse: collapse;}
.badge-button span span table td {padding: 0; border-left: 1.5px solid var(--black); border-right: 1.5px solid var(--black); width: 10px; height: 12px; border-bottom: none;}
.badge-button span span table td:first-child {border-left: none}
.badge-button span span table td:last-child {border-right: none}
.badge-button table td:not([class]) {background: rgba(255,255,255,0.25);}

/* label pro nastenku = label with info about itemBased items (done) */
.label-noticeboard {background: var(--faintGray);
  padding: 1px 6px;
  margin: 1px auto;
  display: inline-block;
  border-radius: calc(var(--unit) / 1.5);
 }

 /* homeworks (on general pages) */
.homework-status-icon-wrapper {
    position: relative;
    width: 23px;
    height: 23px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    flex-shrink: 0;
}

.homework-status-progress {
    position: absolute;
    inset: 0;
}

.homework-status-icon {
  position: relative;
  z-index: 2;
  border-radius: 50%;
  display: block;
  width: 100%;
  height: 100%;
}

/* hlavicka sady v prehledu ukolu: nazev vlevo, stitky vpravo, na mobilu pod sebou */
.homework-list-header {display: flex; justify-content: space-between;}

@media (max-width: 600px) {
    .homework-list-header {flex-direction: column;}
}



.badge-button-parent button.tlacitko.medium.selected.homework-present,
.secondary-box button.tlacitko.medium.selected.homework-present
{
  background-image: url("https://www.umimeto.org/asset/global/img/icons-umime/icon-pin-white.svg");
  background-repeat: no-repeat;
  background-position: right 3px top 4px;
  background-size: auto 17px;
}

.animate-hide {
  animation: hideAnimation 0.5s forwards;
  pointer-events: none;
}

@keyframes hideAnimation {
  to {
    opacity: 0;
    height: 0;
  }
}

/* licence info box */
.asset-licence-info
{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: calc(var(--unit) / 2);
}

.asset-licence-item {
  display: grid;
  grid-template-columns: 50px auto;
  gap: var(--unit);
  align-items: center;
}

.asset-licence-image img {
  max-width: 50px;
  max-height: 40px;
  width: auto;
  height: auto;
  object-fit: contain;
}

/* assignment popover */
.assignments-wrapper .flex-horizontal:empty {display: none;}
.badge-button-parent button.tlacitko.medium {padding: 1px 24px 3px 8px;}
.assignments-wrapper button.tlacitko.medium,
.family-assignments-wrapper button.tlacitko.medium
{padding: 4px 24px 6px 8px; min-height: 29px;}

.badge-button-parent button.tlacitko.medium.hw-new-button-visible,
.badge-button-parent button.tlacitko.medium.hw-new-button-hidden,
.secondary-box button.tlacitko.medium.hw-new-button-visible,
.secondary-box button.tlacitko.medium.hw-new-button-hidden
{padding: 1px 10px;}

.badge-button-parent button.tlacitko.medium.selected,
.secondary-box button.tlacitko.medium.selected
{color: white; background-color: var(--black); border-color: var(--blackHover);}

.badge-button-parent .message {margin-bottom: var(--unit);}
.badge-button-parent .message > div:nth-of-type(1) {flex-shrink: 0;}
.badge-button-parent .message > div {padding: 10px 12px;}
.badge-button-parent .message span {line-height: 110%;}

.tlacitko.secondary.homework-present, .tlacitko.secondary.homework-present:hover {
  background-image: url("https://www.umimeto.org/asset/global/img/icons-umime/icon-pin-blue.svg");
  background-repeat: no-repeat;
  background-position: right 3px top 4px;
  background-size: auto 17px;
}

.tlacitko.primary.homework-present, .tlacitko.primary.homework-present:hover {
  background-image: url("https://www.umimeto.org/asset/global/img/icons-umime/icon-pin-white.svg");
  background-repeat: no-repeat;
  background-position: right 3px top 4px;
  background-size: auto 17px;
}