.f3-margin-rl2{
margin-right: 2px;
margin-left: 2px;
}
.f3-margin-rl4{
margin-right: 4px;
margin-left: 4px;
}
.f3-padding-rl4{
padding-right: 4px;
padding-left: 4px;
}
.f3-padding-rl8{
padding-right: 8px;
padding-left: 8px;
}


.f3-padding-r4{
padding-right: 4px;
}

.f3-padding-r8{
padding-right: 8px;
}

.f3-padding-r16{
padding-right: 16px;
}
.f3-padding-l4{
padding-left: 4px;
}

.f3-padding-l8{
padding-left: 8px;
}

.f3-padding-l16{
padding-left: 16px;
}

.f3-fixed-top {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1030;
}
.f3-large {
    font-size: 28px!important;
}
.f3-container {
    width: 100%;   
    margin-right: auto;
    margin-left: auto;
}
.f3-truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.f3-spinner{
    width: 20px;
    height: 20px;
    border: 2px solid #ddd;       /* couleur de fond */
    border-top-color: #3498db;    /* couleur du spinner */
    border-radius: 50%;
    animation: spin 1s linear infinite;
    margin: 0px auto;           /* centrer le spinner */
  }

  @keyframes spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
  }

.f3-pulse{
    animation: pulse 2s infinite;
}

.f3-truncate20 {
  display: inline-block;
  max-width: 20ch; /* ≈ 10 caractères */
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.f3-truncate10h {
  display: inline-block;
  max-width: 10ch;              /* Limite à ~10 caractères */
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  cursor: default;
  position: relative;
}

.f3-truncate10h:hover::after {
  content: attr(data-fulltext); /* Affiche le texte complet */
  position: absolute;
  background: #f1f1f1;
  color: #000;
  padding: 4px 8px;
  border: 1px solid #ccc;
  white-space: normal;
  z-index: 1;
  top: 100%;
  left: 0;
  width: max-content;
  max-width: 300px;
  box-shadow: 2px 2px 5px rgba(0,0,0,0.2);
}

.f3-ji,
.f3-hover-ji:hover {
    color: #fff !important;
    background-color: #6200ee !important
}

.f3-khaki,.f3-hover-khaki:hover {color: #000 !important;background-color: #f0e68c !important}
.f3-amber,.f3-hover-amber:hover {color: #000 !important;background-color: #ffe4c4 !important}
.f3-amber,.f3-hover-amber:hover {    color: #000 !important;    background-color: #ffe4c4 !important}
.f3-antiquewhite,.f3-hover-antiquewhite:hover {    color: #000 !important;    background-color: antiquewhite !important}
.f3-aliceblue,.f3-hover-aliceblue:hover {    color: #000 !important;    background-color: aliceblue!important}
.f3-oldgreenblackpale.f3-hover-oldgreenblackpale:hover {    color: #f9f6f6 !important;    background-color: rgb(119, 162, 162) !important}
.f3-flex-flow{flex-flow: row wrap;display:flex !important} .f3-gap{gap: 1em} .f3-gap-16{gap: 16px} .f3-gap-8{gap: 8px} .f3-hyphens{hyphens: auto;} 
.f3-grid-auto-flow-row{grid-auto-flow: row; display:grid !important} .f3-grid-auto-flow-col{grid-auto-flow: column; display:flex !important} .f3-grid-auto-flow-dense{grid-auto-flow: row dense;display:flex !important}

@media (min-width: 576px){
    .f3-container {
        max-width: 768px;
    }
}

@media (min-width: 768px){
    .f3-container {
        max-width: 992px;
    }
}

@media (min-width: 992px){
    .f3-container {
        max-width: 1200px;
    }
}

@media (min-width: 1200px){
    .f3-container {
        max-width: 1440px;
    }
}










