.ak-avviso-admin{
    background-color: #ff9a52;
    padding: 10px;
    border-radius: 8px;
    color: #fff;
    text-align: center;
    margin-bottom: 10px;
}
.ak-fill-titolo-matrimonio, .ak-fill-titolo-matrimonio-dinamico{
    text-transform: capitalize;
}
/* AK FOOTER ALBERTO */
.ak-container-btn-footer-albero{
    display: inline-block;
    background: #fff;
    border-radius: 50px;
    padding: 4px 5px;

}
.ak-btn-footer svg{
    vertical-align: text-bottom;
}
.ak-btn-footer{
    border-radius: 50px !important;
    text-transform: none !important;
}
/* AK FOOTER ALBERTO - FINE */
.ak-stato-doc{
    text-transform: uppercase;
    font-weight: bold;
    padding: 3px 8px;
    border-radius: 50px;
    font-size: 14px;
    margin-left: 10px;
}
.ak-stato-doc svg{
    height: 19px;
}
.ak-stato-doc-verifica{
    color:#873F00;
    background-color: #FFEFDD;
}
.ak-stato-doc-verifica svg{
    color:#873F00;
    stroke:#873F00;
    fill:#873F00;
}
.ak-stato-doc-mancante{
    color:#870000;
    background-color: #FFDDDD;
}
.ak-stato-doc-mancante svg{
    color:#870000;
    stroke:#870000;
    fill:#870000;
}
.ak-stato-doc-verificato{
    color:#008732;
    background-color: #DDFFE0;
}
.ak-stato-doc-verificato svg{
    color:#008732;
    stroke:#008732;
    fill:#008732;
}
.ak-riga-documento{
    display: flex;
    justify-content: space-between;
    border-bottom: 2px solid #EBEBEB;
    margin-bottom: 15px;
}
.ak-setup-footer{
    display: flex;
    justify-content: space-between;
}
.ak-file-caricato-container{
    width: 100%;
    margin-bottom: 10px;
}
.ak-file-caricato{
    width: 100%;
    padding: 10px 30px;
    border-radius: 8px;
    border: 1px solid #CDD2DE;
    margin-bottom: 5px;
    display: flex;
    justify-content: space-between;
}
.ak-btn-elimina-file{
    margin-left:8px;
}
.ak-icon-svg {
    max-width: 24px;
    height: 24px;
    display: inline-block;
    margin-left: 2px;
    margin-right: 5px;
    vertical-align: text-bottom;
}
.ak-btn-svg{
    background-color: #F5F5F5;
    color: #002A68;
    height: 30px;
    width: 30px;
    padding-left: 0px;
    padding-right: 0px;
}
.ak-btn-svg:hover{
    background-color: #bdbdbd;
}
.ak-icon-svg{
    color: #002A68;
    fill: #002A68;
    stroke: #002A68;
}
.ak-btn-svg svg{
    max-width: 20px;
    height: 20px;
    padding: 2px;
    border-radius: 4px;
    margin: auto;

}
.ak-file-titolo, .ak-file-btn-container{
    display: flex;
    align-items: center;
}
.ak-file-titolo svg{
    margin-right: 20px;
}
.ak-input-file-doc{
    margin-top: 10px;
}
/* AK MODAL */
.ak-modal label{
    color:#002A68;
    font-weight:bold;
}
.ak-container .form-control{
    border-radius: 8px;
    border: 0px;
    font-size:16px !important;
    min-height: 48px;
    background-color: #F4F4F4;
}
.ak-container .form-control:focus {
    color: #002A68;
    background-color: #F4F4F4;
    outline: .1875rem solid #002A68;
}
.ak-btn-close-modal, .ak-btn-close-modal-partial{
    float: right;
}
.ak-modal {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.4rem;
    width: 90%;
    padding: 1rem;
    min-height: 250px;
    position: absolute;
    top: 100px;
    background-color: white;
    border: 1px solid #ddd;
    border-radius: 15px;
    z-index: 2;
}
.ak-modal-body{
    clear:both;
}
.ak-overlay {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(3px);
    z-index: 1;
}
.hidden{
    display: none;
}
.ak-capostipite{
    text-transform: uppercase;
    font-weight: bold;
}
.ak-nome-genere > .ak-nome{
    margin-right: 10px;
}
.ak-nome-genere > div{
    display: inline-block;
}
.ak-text-right{
    text-align: right;
}
.ak-btn-edit-persona{
    cursor: pointer;
    max-width: 25px;
    max-height: 30px;
}
.ak-icona-genere svg{
    height: 30px;
}
.ak-icona-genere-femmina{
    stroke: #ff4081;
    fill: #ff4081;
}
.ak-icona-genere-maschio{
    stroke: #3f51b5;
    fill: #3f51b5;
}
.ak-badge{
    padding: 5px 10px;
    border-radius: 50px;
    display: inline-block;
    font-size: 12px;
    font-weight: bold;
    line-height: 1.2em;
    margin-bottom: 10px;
}
.ak-badge-vita{
    background-color: #d6ffe3;
}
.ak-badge-vita-ricorrenete{
    background-color: #7FFFA8D6;
}
.ak-badge-morte{
    background-color: #e8e8e8;
}
.person-card {
    border: 1px solid #ddd;
    border-radius: 8px;
    margin-bottom: 20px;
}

.person-card .card-title {
    font-size: 1.25rem;
    margin-bottom: 0.75rem;
}

.person-card .card-text {
    font-size: 0.9rem;
    color: #555;
}

.person-card .badge {
    font-size: 0.8rem;
    margin-left: 10px;
}

.person-card .actions {
    margin-top: 10px;
}

.person-card .actions .btn {
    margin-right: 5px;
    display: block;
}
.person-card .actions svg{
    vertical-align: text-bottom;
}
.ak-container-albero .card {
    min-width: 150px;
    min-height: 300px;
    border: 1px solid #ddd;

}
.ak-container-albero {
    position: relative;
}

.generation-column {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px; /* Space between person nodes */
}

.person-node {
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 20px;
    padding: 10px;
    min-width: 150px;
    position: relative;
    z-index: 1; /* Ensure nodes are above SVG lines */
}

.relationship-lines {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none; /* Prevent SVG from blocking clicks */
}

.ak-font-corsivo{
    font-family: freight-big-pro, Sans-serif;
    font-weight: 300;
    font-style: italic;
}
.ak-setup-progress{
    margin-top:15px;
    text-align: center;
}
/* BOOTSTRAP OVERRIDE */
.ak-container .btn-link{
    color:#000;
}
.ak-container .btn-link:hover, 
.ak-container .btn-link:active, 
.ak-container .btn-link:focus{
    color:#171717;
}
.ak-container .btn-primary{
    background-color: #032558;
    color:#fff;
    border-radius: 8px;
    padding: 12px 18px;
    font-size: 16px;
}
.ak-container .btn-danger{
    background-color: #870000;
    border-color: #870000;
    color:#fff;
    border-radius: 8px;
    padding: 12px 18px;
    font-size: 16px;
}
.ak-container .btn-primary:hover, 
.ak-container .btn-primary:active, 
.ak-container .btn-primary:focus{
    background-color: #021736 !important;
}
.ak-container .btn-danger:hover, 
.ak-container .btn-danger:active, 
.ak-container .btn-danger:focus{
    background-color: #610101 !important;
}
.btn-primary-outline{
    color: #032558;
    background: #fff;
    border: 2px solid #032558;
    border-radius: 8px;
    padding: 12px 18px;
    font-size: 16px;
    font-weight: 600;
    text-transform: uppercase;
}