/* Style dla drzewa przodków - wersja Flexbox kompatybilna z oryginałem */
body {
     width: 1024px; /* lub inna stała szerokość */
	 font-family: Tahoma, Verdana, sans-serif;
    font-size: 13px;
    font-weight: normal;
    text-decoration: none;
    background-color: #fefefe;
    margin: 1px;
    width: 100%;
}

 .tytul {
    font-family: Tahoma, Verdana, sans-serif;
    font-size: 16px;
    font-weight: normal;
    text-decoration: none;
	margin: 20px 0;
}
.podsumowanie {
    font-family: Tahoma, Verdana, sans-serif;
    font-size: 13px;
    font-weight: normal;
	font-style: italic;
    text-decoration: none;
	color: #777;
	align-items: center;
	width: 600px;
	margin: 0 auto;
}
.sosaform-print{
    font-family: Tahoma, Verdana, sans-serif;
    font-size: 20px;
    font-weight: normal;
    text-decoration: none;
    color: #494;
	align-items: center;
	width: 100%;
	display: flex;
	gap: 10px;
	margin: 20px 0;
}
.btn-print {
	    min-width: 200px;
    height: 60px;
    vertical-align: middle;
    margin: 0 5px;

}
/*Główny kontener - zachowanie oryginalnego stylu */
.drzewo {
    width: 750px;
    margin: 0 auto;
    padding: 10px 0;
    background: transparent;
    border-radius: 5px;
    min-height: 300px;
}

/* Każdy wiersz w drzewie */

.sosaform-16,
.sosaform-32,
.sosaform-64 {
    display: flex;
    align-items: flex-start;
    width: 100%;
}

.spacer img,
.sosaform-16,
.sosaform-32,
.sosaform-64 {
    height: 20px;
}
.ramka {
	min-width: 300px;
	padding: 0 20px;
	border-radius: 5px;
	border: 2px dashed #aaa;
	background-color: #FAFBE4;
	}

/* Podstawowe style dla wszystkich elementów flex */
.ancestor-item, 
.spacer, 
.connector {
    flex-shrink: 0;
    box-sizing: border-box;
}

/* Style dla elementów przodków - zachowanie oryginalnych kolorów i rozmiarów */

.ancestor-item {
    height: 20px;
    margin: 0;    
    padding: 0;    
	padding-right: 5px;
    text-align: right;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.ancestor-item.a32 {
    width: 420px;
}

.ancestor-item.a16 {
    width: 470px;
}

.ancestor-item.a8 {
    width: 520px;
}

.ancestor-item.a4 {
    width: 570px;
}

.ancestor-item.a2 {
    width: 620px;
}

.ancestor-item.a1 {
    width: 670px;
}

/* Style dla spacerów - zachowanie oryginalnych obrazków tła */
.spacer {
    min-height: 15px;
    padding: 0;
    margin: 0;
    background-repeat: no-repeat;
}


.spacer.m1,
.spacer.m2,
.spacer.w1,
.spacer.w2 {
    width: 50px;
}

/* Style dla łączników - zachowanie oryginalnych rozmiarów */
.connector {
font-family: 'Roboto Condensed', sans-serif;
	font-style: italic;
	color: grey; /* lub np. #888 dla jaśniejszego odcienia */
    min-height: 15px;
    padding: 0;
    margin: 0;
	background-color: transparent;
	text-align: right;
}

.connector.k1 {
    width: 50px;
}

.connector.k2 {
    width: 100px;
}

.connector.k3 {
    width: 150px;
}

.connector.k4 {
    width: 200px;
}

.connector.k5 {
    width: 250px;
}

/* Style dla linków - zachowanie oryginalnych stylów */

a.ma {
    color: #242464;
    font: 16px Tahoma, Verdana, sans-serif;
    text-decoration: none;
    background: none;
}

a.wa {
    color: #642424;
    font: 16px Tahoma, Verdana, sans-serif;
    text-decoration: none;
    background: none;
}

/* Style dla drukowania */
@media print {

  body {
    width: 1024px; /* lub inna stała szerokość */
    margin: 0 auto;
    zoom: 0.8; /* ewentualna skalowalność */
  }

  html {
    font-size: 14px; /* zmniejszenie czcionki na potrzeby druku */
  }
.sosaform-print { display: none !important; }
.debug-info{display: none !important;}
.podsumowanie {
	width: 600px !important;
	margin: 0 auto !important;
	font-style: italic;
	color: #777;
}
  /* Zresetuj niepotrzebne mobilne style */
/*  * {
    box-sizing: border-box;
  })*/
}
