#showDimension {
    background-color: #4caf50;
    color: white;
}

.smallRight .dropbtn {
    /*background-color: #04AA6D;
    color: white;*/
    /*padding: 16px;
    font-size: 16px;*/
    border: none;
    text-align: center;
}

/* The container <div> - needed to position the dropdown content */
.smallRight .dropdown {
    position: relative;
    display: inline-block;
}

/* Dropdown Content (Hidden by Default) */
.smallRight .dropdown-content {
    display: none;
    position: absolute;
    background-color: #f1f1f1;
    min-width: 160px;
    /* box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);*/
    z-index: 1;
}

.logo {
    padding-left: 10px;
}

.bullet .li {
    list-style: circle;
}

.imageTeam {
    width: 50dvw;
}

.EasySTEP {
    color: #156082;
}

.EasySTEPsmall {
    font-size: small;
    color: #156082;
}

/* Links inside the dropdown */
.smallRight .dropdown-content a {
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
}

/* Change color of dropdown links on hover */
/* .smallRight .dropdown-content a:hover {background-color: #ddd;}*/

/* Show the dropdown menu on hover */
.smallRight .dropdown:hover .dropdown-content {
    display: block;
}

/* Change the background color of the dropdown button when the dropdown content is shown */
.smallRight .dropdown:hover .dropbtn {
    background-image: "./img/accountHover.png";
}


#divAlignRight {
    /* float: right;*/
    color: #156082;
    /*margin-top: 5px;*/
    text-align: center;
    /*padding-right: 50px;*/
}

.backColorGreen {
    background-color: #76b465;
}

.backColorYellow {
    background-color: lightgoldenrodyellow;
}

.backColorBlue {
    background-color: lightblue;
}

.sibling-link {
    fill: none;
    stroke: black;
    stroke-width: 3px;
    stroke-dasharray: 8, 3;
}

/*VERO - zonage*/
#sidebarLeft {
    clear: both;
    float: left;
    width: 7dvw;
    min-height: 90dvh;
    text-align: left;
    /*border-right-style: dashed;
    border-right-width: thin;
    border-right-color: #3E5C75;*/
    background-color: #ECECEC;
    /* padding: 1dvb; */
    /*border-style: dashed;
      border-width: thin;*/
}

#content {
    /* float: left; */
    /* width: 68dvw; */
    min-height: 80dvh;
    /* padding: 1dvb; */
    /*border-style: dashed;
    border-width: thin;*/

}

#divDetails {
    display: none;
    border-left: 1px solid black;
    padding: 5px;
    overflow: scroll;
    padding-bottom: 2.5rem;
    min-width: 200px;
}

#sidebarRight {
    float: left;
    width: 20dvw;
    min-height: 80dvh;
    padding: 1dvb;
    border-style: dashed;
    border-width: thin;

}

.dropbtn {
    background-color: transparent;
    color: #3E5C75;
    font-size: 16px;
    font-weight: bold;
    border: none;
    cursor: pointer;
    min-width: 6dvw;
    max-width: 10dvw;
}

.dropbtn:hover {
    text-decoration: underline;
}

.homeButton {
    position: relative;
    display: inline-block;
}

.infoButton {
    position: relative;
    display: inline-block;
}

/* The container <div> - needed to position the dropdown content */
.dropdown {
    position: relative;
    display: inline-block;
}

.dropdown2 {
    position: fixed;
    display: inline-block;
    padding-top: 20px;
    color: #3E5C75;
    left: 9%;
    right: auto;
}

/* Dropdown Content (Hidden by Default) */
.dropdown-content {
    display: none;
    position: relative;
    /*background-color: #718FA5;*/
    color: #3E5C75;
    min-width: 20dvh;
    /*box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);*/
    z-index: 1;
}

/* Links inside the dropdown */
.dropdown-content a {
    color: #3E5C75;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
    position: static;
}

/* Change color of dropdown links on hover */
.dropdown-content a:hover {
    color: #273641;
    text-decoration: underline;
}

/* Show the dropdown menu on hover */
.dropdown:hover .dropdown-content {
    display: flex;
    position: fixed;
    font-size: 14px;
    background-color: lightgray;
}

/* Change the background color of the dropdown button when the dropdown content is shown */
.dropdown:hover .dropbtn {
    /*background-color: #6C879C;*/
    color: #273641;
    text-decoration: underline;
}

#sidebarRight {
    width: 15%;
    background-color: white;
    color: #3E5C75;
    font-size: small;
}

.less {
    width: 30%;
}

h1 {
    text-align: left;
}

h4 {
    font-size: 1rem;
}

h3 {
    font-size: 1rem;
}

#fleft1 {
    float: left;
    margin-top: 10px;
}

#fright1 {
    float: right;
}

#fleft2 {
    float: left;
    margin-left: 20px;
    margin-top: 10px;
}

#fleft3 {
    float: left;
    margin-left: 30px;
    margin-top: 10px;
}

.sousTitre {
    text-align: left;
    font-size: large;

}

.smallSmall {
    font-size: xx-small;
}

.grey {
    background-color: #ccc;
    color: black;
    border-color: black;
}

input[type=file]::file-selector-button {
    border: 1px cornflowerblue solid !important;
    border-radius: 0.5em;
    background-color: cornflowerblue;
    color: white;
}

.last-level {
    stroke: cornflowerblue;
}

#divList {
    text-align: left;
}

.seeMoreTree {
    border: 1px solid black;
    border-radius: 20px;
}

.seeMoreTree {
    border: 1px solid black;
    border-radius: 20px;
}

table {
    /* width: 80%; */
    /*width: 100%;*/
    border: 1px solid black;
    margin: 0 auto;
    margin-top: 1em;
}

td {
    width: 10em;
    text-align: justify;
}

body {
    overflow: hidden;
    min-height: 100vh;
    left: 0;
    margin-right: auto;
}

ul a {
    text-decoration: none;
    color: #333;
}

.img {
    width: 5em;
    height: 6em;
}

ul a:hover {
    text-decoration: underline;
}

.container {
    border: 1px solid black;
    margin-bottom: 1em;
    border-radius: 20px;
}

.big-container {
    /* min-height: 85vh; */
    /* width: 80%; */
    height: 85vh;
    left: 0;
    overflow: auto;
    text-align: left;
    ;
}

.section-title-modal {
    margin: 1em;
    margin-left: 0;
    /* color: white; */
    margin-bottom: 0.2rem;
    font-size: .8rem;
    font-weight: 500;
}

.sub-container {
    display: flex;
    justify-content: left;
}

.right {
    align-self: flex-start;
}

.dt-container {
    margin: 10px;
}

.svg-content-responsive {
    width: 100vw;
    height: 70vh;
    left: 0;
}

.list-datas {
    list-style-type: disc;
}

.dataLine {
    overflow: auto;
    font-size: 0.8rem;
}

.collapsible-content {
    display: none;
}

.tableSpan {
    display: flex;
    justify-content: start;
}

.representation {
    border-bottom: 1px solid #ccc;
}

.toggle-btn {
    margin-left: 1em;
    border: 1px solid black;
    border-radius: 50%;
    height: 2em;
    width: 2em;
    background-color: lavender;
}

.content {
    padding-top: 0.2em;
}

input[type=file]::file-selector-button {
    border: 1px black solid;
    border-radius: 0.5em;
}

#searchInput {
    margin-left: 0.5em;
    margin-right: 0.5em;
}

.hidden {
    display: none;
}

.search-container,
.selector {
    display: none;
}

.buttons,
.graph-buttons {
    display: none;
}

.graph-buttons {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    max-width: 100%;
    width: 100%;
    gap: 10px;
    /* Espacement réduit pour éviter le débordement */
}

.graph-buttons .row .col {
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
}

.graph-buttons .row {
    width: 100%;
    /* Assure que chaque élément prend toute la largeur */
    display: flex;
    justify-content: center;
}

.graph-buttons button {
    width: 90%;
    /* Réduit la largeur des boutons pour éviter qu'ils dépassent */
    max-width: 250px;
    /* Empêche les boutons de devenir trop larges */
}

/* À partir de 768px (tablettes et écrans plus grands) */
@media (min-width: 768px) {
    .graph-buttons {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
    }

    .graph-buttons .row {
        flex: 1 1 auto;
        display: flex;
        justify-content: center;
    }

    .graph-buttons button {
        width: auto;
        /* Permet aux boutons de s'adapter naturellement */
        max-width: none;
    }
}

footer {
    background-color: #3E5C75;
    padding: 7px;
    text-align: center;
    color: white;
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 2rem;
    font-size: 0.8rem;
    /* Footer height */
}

.footer a {
    color: #fff;
}

/*
            Tree css
            */
#divTree {
    overflow: auto;
    text-align: center;
    /*border: 0.5px solid;*/
    display: none;
    height: 75vh;
    width: 100%;
}

#totalData {
    display: none;
}

#divTree .node {
    cursor: pointer;
}

#divTree .node circle {
    fill: #fff;
    stroke: steelblue;
    stroke-width: 1.5px;
}

#divTree .node text {
    font: 16px "Hiragino Sans GB", "华文细黑", "STHeiti", "微软雅黑", "Microsoft YaHei", SimHei, "Helvetica Neue", Helvetica, Arial, sans-serif !important;
}

#divTree .link {
    fill: none;
    stroke: #ccc;
    stroke-width: 1.5px;
}

#divTree .bold-link {
    fill: none;
    stroke: black;
    stroke-width: 3px;
}

/* Assembly graph */
#divGraphAssembly {
    /* overflow: auto; */
    text-align: center;
    border: 0.5px solid;
    display: none;
    height: 70vh;
}

#divGraphAssembly .node {
    cursor: pointer;
}

#divGraphAssembly .node circle {
    fill: #fff;
    stroke: steelblue;
    stroke-width: 1.5px;
}

#divGraphAssembly .node text {
    font: 16px "Helvetica Neue", Helvetica, Arial, sans-serif !important;
}

#divGraphAssembly .link {
    fill: none;
    stroke: #ccc;
    stroke-width: 1.5px;
}

.first-level,
.hidden-link {
    display: none;
}

.content {
    font-style: normal;
    font-weight: 400;
    color: navy;
}

.parameter-container {
    background-color: cornsilk;
    border-radius: 10px;
    padding: 10px;
}

ul {
    list-style-type: none;
}

li {
    margin-left: 20px;
}

.collapsible {
    cursor: pointer;
    user-select: none;
}

.collapsible-content {
    display: none;
}

.collapsible-content.active {
    display: block;
}

#divTree .link.transformation-link {
    stroke: #76b465;
    /* stroke-width: 3px; */
    stroke-width: 1.5px;
}

.list-element {
    border: 1px solid black;
    padding-left: 2em;
    padding-right: 2em;
}

.item {
    margin-top: 0.2em;
}

.details-button-graph {
    background-color: bisque;
    border: 1px black solid;
    border-radius: 1em;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    height: 1.2em;
    width: 1.2em;
}

i.bi.bi-card-list {
    font-size: 0.7em;
}

.justifyed {
    text-align: justify;
    max-inline-size: fit-content;
}

.table-modal-details {
    text-align: left;
    margin-top: 0px;
    border: none;
}

.button-modify-container {
    display: flex;
    justify-content: end;
    position: absolute;
    right: 20px;
}

.modal-sub-title {
    /* border: 1px darkgrey solid; */
    padding: 3px;
    display: flex;
    margin-top: 5px;
    justify-content: center;
    /* border-radius: 10px; */
    /* background-color: #ecebeb; */
    align-items: center;
    font-size: .9rem;
}

.modal-sub-title-empty {
    border: 1px darkgrey solid;
    padding: 3px;
    display: flex;
    margin-top: 5px;
    justify-content: center;
    /* border-radius: 10px; */
    /* background-color: #939393; */
    color: grey;
    align-items: center;
}

li {
    list-style: none;
}

.buttons-container-modal {
    display: flex;
    gap: 10px;
}

.children {
    padding: 10px;
    /* border: 1px black solid; */
}

/* .one {
    border: 1px solid black;
    margin-top: 10px;
    padding: 1em;
    border-radius: 10px;
} */
td.label-modal {
    width: 40%;
    vertical-align: top;
    font-style: italic;
    font-weight: 300;
}

.label-modal {
    font-style: italic;
    font-weight: 300;
    font-size: 0.8rem;
}

.ended {
    white-space: nowrap;
    /* overflow: auto; */
    text-align: justify;
    font-size: 0.9em;
    padding-left: 0px;
}

pre {
    font-family: var(--bs-font-sans-serif);
}

.pmi-editor-container {
    display: flex;
    justify-content: start;
}

.row-pmi {
    margin-bottom: 10px;
}

.label-pmi {
    width: 10px;
    padding-left: 20px;
    padding-right: 20px;
    background-color: lightgray;
    min-width: 180px;
    border-radius: 5px;
}

#typeSelect {
    margin-bottom: 10px
}

textarea {
    resize: both;
    overflow: auto;
}

.textArea-container {
    display: flex;
    flex-direction: column;
}

form {
    text-align: start;
}

.download-button {
    margin-top: 10px
}

.separator {
    display: flex;
    align-items: center;
    text-align: center;
}

.separator::before,
.separator::after {
    content: '';
    flex: 1;
    border-bottom: 1px solid #000;
}

.separator:not(:empty)::before {
    margin-right: .25em;
}

.separator:not(:empty)::after {
    margin-left: .25em;
}

.form-modal {
    display: flex;
    justify-content: space-between;
    margin-bottom: 0.5em;
}

.justifyCentered {
    display: flex;
    justify-content: center;
    column-gap: 10px;
}

.nested {
    display: none;
}

.active {
    display: block;
}

.caret::before {
    content: "\25B6";
    color: black;
    display: inline-block;
    margin-right: 6px;
}

.caret-down::before {
    transform: rotate(90deg);
}

#tree {
    text-align: left;
}

ul.nested {
    border: 1px solid black;
    margin-right: 1em;
    margin-left: 1em;
    margin-bottom: 1em;
    padding: 1em;
}

.li_list_nested {
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}

.li_list_nested>span {
    cursor: pointer;
}

#modal-content-text {
    text-align: left;
}

#tooltip {
    position: absolute;
    text-align: center;
    width: auto;
    /* Permet à la largeur de s'ajuster au contenu */
    padding: 10px;
    /* Ajoute du padding autour du texte */
    font: 12px sans-serif;
    background: lightsteelblue;
    border: 1px solid #ddd;
    border-radius: 8px;
    pointer-events: none;
    /* Empêche l'interaction avec l'infobulle */
    opacity: 0;
    transition: opacity 0.2s;
    white-space: nowrap;
    /* Empêche le retour à la ligne dans le contenu */
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
    /* Ombre portée pour améliorer la visibilité */
}

.additionalParentLink {
    fill: none;
    stroke: grey;
    opacity: 0.3;
    stroke-width: 1.5px;
}

.dropdown-item:hover {
    cursor: pointer;
}

.td-child {
    /* padding-left: 20px; */
}

#fileSelector {
    max-width: 100%;
}

#table {
    display: none;
}

.highlighted {
    stroke: #76b465 !important;
}

.highlighted-link {
    stroke: #76b465 !important;
    stroke-width: 5px !important;
}

#genericTreeContainer {
    display: none;
}

.selected {
    color: #76b465 !important;
    stroke: #76b465 !important;
}

.dropbtnLeft {
    background-color: #E3EAEC;
    color: #3E5C75;
    font-size: 12px;
    border: none;
    cursor: pointer;
    min-width: 4dvw;
    max-width: 10dvw;
    text-align: center;
    padding-top: 10px;
}

.dropbtnLeft:hover {
    font-weight: bold;
    text-decoration: none;
}


/* Dropdown Content (Hidden by Default) */
.dropdownLeft-content {
    display: none;
    position: relative;
    /*background-color: #718FA5;*/
    color: #3E5C75;
    min-width: 20dvh;
    /*box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);*/
    z-index: 1;
}

/* Links inside the dropdown */
.dropdownLeft-content a {
    color: #3E5C75;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
    position: static;
}

/* Change color of dropdown links on hover */
.dropdownLeft-content a:hover {
    color: #273641;
    text-decoration: underline;
}

/* Show the dropdown menu on hover */
.dropdownLeft:hover .dropdownLeft-content {
    display: flex;
    position: fixed;
    font-size: 12px;
}

/* Change the background color of the dropdown button when the dropdown content is shown */
.dropdownLeft:hover .dropbtnLeft {
    /*background-color: #6C879C;*/
    color: #76b465;
    text-decoration: none;
}

.dropdownAbout {
    position: relative;
    display: inline-block;
    padding: top 90vdh;
}

.dropbtnAbout {
    background-color: white;
    color: #3E5C75;
    font-size: 12px;
    font-weight: bold;
    border: none;
    cursor: pointer;
    min-width: 4dvw;
    max-width: 10dvw;
    text-align: left;

}

.dt-left {
    text-align: left !important;
}

span#userInitials {
    font-size: small;
}

.different {
    background-color: #ff9999;
    font-weight: bold;
}

.compare-container {
    width: 100vw;
    display: flex;
    justify-content: space-between;
    gap: 20px;
}

.compare-table {
    overflow: auto;
    flex: 1;
    min-width: 45%;
}

tr.different-add td {
    background-color: #c1e7b5 !important;
}

tr.different-delete td {
    background-color: #ff9999 !important;
}

tr.different-modified td {
    background-color: #ff9612b3 !important;
}

#compare-input-file {
    display: none;
}

#reqTable {
    display: none;
}

#pmiTable {
    display: none;
}

#tree-container {
    display: none;
    width: 100%
}

#buttons-container {
    display: flex;
    padding: 1rem 2rem;
    gap: 20px;
}

span.highlight-diff {
    background-color: yellow;
}

tr.empty-row {}

tr.empty-row td {
    color: gainsboro !important;
    background-color: gainsboro !important;
}