* body{
  margin: 0px;
}
.cv_arrow_001_cor{
  display: inline-block;
}
.cv_berufe_details{
  text-align: center;}
.cv_drucken{
  border: 1px solid black;
  padding:10px;
  cursor: pointer;}
.cv_drucken:hover{
  background-color: rgba(65, 111, 111, 0.2);
  border: 1px solid rgba(50, 50, 122, 0.2);}
.cv_image_001{
  height: 180px;}
.cv_menu_001{
  font-size: 36px;
  font-weight: bold; 
  /*
  left: 30%;
  */
  width:100%;}
.cv_menu_002{
  font-size: 36px;
  font-weight: bold;
  color: white;
  display:none;}
.cv_mehrDetails{
  border: 2px solid antiquewhite;
  border-radius: 2px;
}
.cv_mehrDetails:hover{
  background-color: antiquewhite;
  cursor:pointer;
  width: 200px;}
.cv_mehrDetails_schulungen_2{
  position: relative;
  top: -12px;
}
.cv_mehrDetails_schulungen:hover{
  background-color: antiquewhite;
  cursor:pointer;
  }
.cv_person{
  display: flex;
  justify-content: center;
  align-items: center;}
.cv_person_001, .cv_kenntnisse_001{
  font-weight: bold;}
.cv_person_002{
  padding-left: 60px;}
.cv_showHide{
  display:none;}
.cv_tbl_td_000{ width: 650px; text-align: justify; }
.err_cv_mehr_details_info{
  color: red;
}
.err_cv_mehr_details_info_timer, .cv_login{
  display: inline-flex;
}
.cv_files_in_folder{
  display: inline-flex;
  padding: 10px;
  margin-right: 2px;
  cursor: pointer;
  background-color: bisque;
}
.cv_listTree_folders{
  padding: 10px;
  cursor: pointer;
  background-color: bisque;
}
.cv_files_in_folder:hover{
  background-color:cyan;
}
.cv_login_btn{ cursor:pointer; right:-1px; left:-1px; }
.cv_login_btn:hover{ background-color: bisque; }
.cv_img_div{ width: 300px; }
.cv_listTree{ margin-left: calc(var(--i) * 25px); }
.cv_tbl_printStuff td, .cv_tbl_printStuff th{ vertical-align: top; }
.cv_tbl_printStuff_corr{ width: 100px; margin-left: 0px; }
.cv_listTree_files:hover{ color: blue; text-decoration: underline; cursor: pointer; }
.cv_listTree_files_scroll_box{ width: 100%; max-height: 300px; overflow-y: auto; overflow-x: hidden; }
.cv_listTree_xlsx_scroll_box, .cv_listTree_docx_scroll_box, .cv_listTree_pptx_scroll_box{
  border: 1px solid black;
  width: 650px;
  height: 300px;
  overflow-y: auto; /* vertikaler Scroll */
  overflow-x: auto; }
.cv_listTree_xlsx_scroll_box table tr:nth-child(even){ background-color:bisque; }
.cv_listTree_xlsx_scroll_box table tr:nth-child(odd){ background-color:cornflowerblue; }
.cv_btn_prev_next{
  --b: 3px;   /* border thickness */
  --s: .45em; /* size of the corner */
  --color: #373B44;
  padding: calc(.5em + var(--s)) calc(.9em + var(--s));
  color: var(--color);
  --_p: var(--s);
  background:
    conic-gradient(from 90deg at var(--b) var(--b),#0000 90deg,var(--color) 0)
    var(--_p) var(--_p)/calc(100% - var(--b) - 2*var(--_p)) calc(100% - var(--b) - 2*var(--_p));
  transition: .3s linear, color 0s, background-color 0s;
  outline: var(--b) solid #0000;
  outline-offset: .6em;
  font-size: 16px;
  border: 0;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation; }
.cv_btn_prev_next:hover, .cv_btn_prev_next:focus-visible{
  --_p: 0px;
  outline-color: var(--color);
  outline-offset: .05em;
  cursor: pointer; }
.cv_btn_prev_next:active{ background: var(--color); color: #fff; }
.cv_text_container {
  /*
  padding-left: 30px;
  */
  width: 95%; /* Beispielbreite */
  cursor: pointer; /* Zeigt an, dass der Text klickbar ist */
  white-space: nowrap; /* Verhindert Zeilenumbruch im abgeschnittenen Zustand */
  overflow: hidden; /* Versteckt den überlaufenden Text */
  text-overflow: ellipsis; /* Fügt die drei Punkte hinzu, WENN der Text überläuft */
  max-width: 650px; /* Stellt sicher, dass overflow/ellipsis funktioniert */
  height: 100px; /* Stellt sicher, dass overflow/ellipsis funktioniert */
}
/* CSS-Klasse, die per JavaScript hinzugefügt wird, wenn der Text erweitert ist */
.cv_text_container.expanded {
  white-space: normal; /* Erlaubt Zeilenumbruch wieder */
  overflow: visible; /* Zeigt den gesamten Text an */
  text-overflow: clip; /* Entfernt die drei Punkte */
  cursor: auto; /* Ändert den Cursor zurück zum Standard */
  text-align: justify;
}
.cv_signal {
  position: relative;
  font-size: 14px;
  letter-spacing: 0.03em;
  color: #579dc6; }
.cv_signal::after { /* DUPLIKAT */
  content: attr(data-text);
  position: absolute;
  inset: 0;
  color: #579dc6;
  opacity: 0.7;
  pointer-events: none;
  animation: drift 3s infinite; }
@keyframes drift { /* GLITCH IMPULSE */
  0%, 85% {
    transform: translate(0, 0);
    filter: none;
    clip-path: inset(0 0 0 0);
  }
  88% {
    clip-path: inset(20% 0 50% 0);
    transform: translateX(-6px);
    filter: blur(1.2px);
  }
  90% {
    clip-path: inset(50% 0 20% 0);
    transform: translateX(8px);
  }
  92% {
    clip-path: inset(10% 0 70% 0);
    transform: translateX(-4px);
    filter: blur(0);
  }
  100% {
    clip-path: inset(0 0 0 0);
    transform: translate(0, 0);
  } }
@media print {
  @page {
    margin: 10mm;
  }
  body {
    margin: 0;
  }
  .cv_dontShowAtPrint{ display: none; }
  .cv_showHide{ display:block; }
}
/* popup */
.cv_modal{
  position:fixed;
  top:50%;
  left:50%;
  transform: translate(-50%, -50%);
  border: 1px solid black;
  border-radius: 10px;
  z-index:10;
  background-color: white;
  width: 500px;
  max-width: 80%;}
.cv_modal-header{
  padding: 10px 15px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid black;}
.cv_modal-header .cv_title{
  font-size: 1.25rem;
  font-weight: bold;}
.cv_modal-header .cv_close-button{
  cursor: pointer;
  border: none;
  outline: none;
  background: none;
  font-size: 1.25rem;
  font-weight: bold;}
.cv_modal-body{
  padding: 10px 15px;}
#cv_modal-overlay{
  position: fixed;
  top:0;
  left:0;
  right:0;
  bottom:0;
  background-color:rgba(0,0,0,.5);}