/* ----------------------------------------------------------------
	Custom CSS

	Add all your Custom Styled CSS here for New Styles or
	Overwriting Default Theme Styles for Better Handling Updates
-----------------------------------------------------------------*/

form i {
  margin-left: -30px;
  margin-top: 8px;
  cursor: pointer;
}

.errorlist {
  color: red;
}

.errorlist > li{
  list-style: none;
  display: inline-block;
	font-size: 12px;
	font-weight: 500;
  text-transform: none;
  letter-spacing: 0;
}

.alert-error {
  color: #842029;
  background-color: #f8d7da;
  border-color: #f5c2c7;
}
.errorlist > input{
  border-color: red;

}

.bg-vend {
  background-color: #58879b !important;
}

.bg-orga {
  background-color: #ff8c51 !important;
}

.txt-vend {
  color: #58879b !important;
}

.txt-orga {
  color: #ff8c51 !important;
}

.border-vend {
  border-color: #58879b !important;
}

.border-orga {
  border-color: #ff8c51 !important;
}

.btn-orga {
  color: #fff;
  background-color: #ff8c51;
  border-color: #ff8c51;
}

.btn-vend {
  color: #fff;
  background-color: #58879b;
  border-color: #58879b;
}

@media (min-width: 768px) {
    .feature-box-border-horizontal .feature-box { position: relative; }

    .feature-box-border-horizontal .feature-box:not(.noborder) .fbox-icon::before,
    .feature-box-border-horizontal.border-hover-animate .feature-box:not(.noborder) .fbox-icon::after {
        content: "";
        position: absolute;
        top: 31px;
        left: calc(50% + 32px);
        width: calc(100% - 64px);
        height: 2px;
        border: 1px solid #EEE;
        z-index: 0;
    }

    .feature-box-border-horizontal.border-dashed .feature-box:not(.noborder) .fbox-icon::before,
    .feature-box-border-horizontal.border-dashed.border-hover-animate .feature-box:not(.noborder) .fbox-icon::after {
        border-style: dashed;
    }

    .feature-box-border-horizontal.border-hover-animate .feature-box:not(.noborder) .fbox-icon::after {
        display: block;
        border-color: #222;
        width: 0;
        transform-origin: top left;
        transition: width .5s ease-in-out;
    }

    /* .feature-box-border-horizontal .feature-box:not(.noborder):nth-child(1) .fbox-icon::before { background-color: #222; } */

    .feature-box-border-horizontal.border-hover-animate .feature-box:not(.noborder):hover .fbox-icon::after {  width: calc(100% - 64px); }


    .feature-box-border-horizontal .fbox-icon i,
    .feature-box-border-horizontal .fbox-border.fbox-light .fbox-icon i {
        line-height: 60px;
        font-size: 24px;
        z-index: 1;
        text-align: center;
        box-shadow: 0 0 0px 10px #FFF;
    }

    .feature-box-border-horizontal .feature-box.flex-column:not(.noborder) .fbox-icon::before,
    .feature-box-border-horizontal.border-hover-animate .feature-box.flex-column:not(.noborder) .fbox-icon::after {
        left: calc(0% + 100px);
    }
}

.text-justify {
  text-align: justify !important;
}

/* Ajoute un effet de fond sombre et de texte clair au survol */
.fbox-effect:hover .fbox-content {
	background-color: #333;
	color: #fff;
	transition: background-color 0.3s, color 0.3s;
	border-radius: 4px;
}

/* Pour que les titres et paragraphes héritent bien du changement */
.fbox-effect:hover .fbox-content h3,
.fbox-effect:hover .fbox-content p {
	color: #fff;
}

/* Optionnel : ajouter un petit padding pour l'effet visuel */
.fbox-content {
	transition: background-color 0.3s, color 0.3s;
	padding: 1rem;
	border-radius: 4px;
}



#page-menu.sticky-page-menu:not(.dots-menu) #page-menu-wrap { top: 100px; }

.panneau-rue {
      position: relative;
      display: inline-block;
      background-color: #b7dabc;
      color: white;
      padding: 25px 20px;
      border: 6px solid white;
      border-radius: 16px;
      font-family: 'Arial', sans-serif;
      font-size: 24px;
      text-transform: uppercase;
      letter-spacing: 1px;
      box-shadow: 0 8px 16px rgba(0, 0, 0, 0.5);
    }

    /* Liseré blanc intérieur */
    .panneau-rue::after {
      content: '';
      position: absolute;
      top: 8px;
      left: 8px;
      right: 8px;
      bottom: 8px;
      border: 2px solid white;
      border-radius: 10px;
      pointer-events: none;
    }

    /* Vis dans les coins (haut-gauche et bas-droit) */
    .panneau-rue::before {
      content: '';
      position: absolute;
      width: 12px;
      height: 12px;
      background-color: #ccc;
      border-radius: 50%;
      border: 2px solid #666;
      box-shadow: inset -1px -1px 2px rgba(0,0,0,0.5);
      top: 6px;
      left: 6px;
    }

    /* 2e paire de vis via le <span> */
    .panneau-rue span::before,
    .panneau-rue span::after {
      content: '';
      position: absolute;
      width: 12px;
      height: 12px;
      background-color: #ccc;
      border-radius: 50%;
      border: 2px solid #666;
      box-shadow: inset -1px -1px 2px rgba(0,0,0,0.5);
    }

    .panneau-rue span::before {
      top: 6px;
      right: 6px;
    }

    .panneau-rue span::after {
      bottom: 6px;
      left: 6px;
    }

/* Gestion du tableau liste d'articles pour l'affichage sur téléphone */

.table-fixed{
  table-layout: fixed;
}
.w-6{
  width: 6%;
}

.w-14{
  width: 14%;
}

.w-46{
  width:46%;
}

.table input.form-control { 
  width: 100%; 
  min-width: 0;
}

/* Règles spéciales pour l'impression de document*/
@media print {
    /* les styles d'impression commencent ici */
  @page{margin-top:10mm !important;}
    body {
        font-size: 13px;
        width: 100%;
        background-color: #123456;
        margin: 10mm !important;
    }
    .box, .container { float: none !important; }
    .codeart{
        font-size: 24px;
        padding: 0px;
        margin: 0px;
    }
  .container, .box { width: 100% !important; margin: 0 !important; padding: 0 !important; }
  .row { margin-left: 0 !important; margin-right: 0 !important; }
  [class*="col-"] { padding-left: 0 !important; padding-right: 0 !important; float: none !important; }

    .welcome, .title, footer, a, header{
        display: none;
    }
    table.fiche tr td { 
      font-size: 13px;
        color: black;
        padding:0px;
        border-width: 1px;
        border-color: black;
    }
    table.fiche {
      width:100% !important;
      margin-top:5mm;
    }

    .headtable tr td{
        color: #784125;
    }

    .box, .container{
        width: 100%;
        margin: 0;
        float: none;
    }

    .space {
        height : 0mm;
    }

    .etiqu{
        height: 38mm;
        display: inline-block !important;
        width: 24% !important;       /* 4 par ligne */
        margin:0;
    vertical-align: top;
    break-inside: avoid;
    page-break-inside: avoid;
    -webkit-column-break-inside: avoid;
    }
    .description{
        margin-top: -2mm;
    }
    .segno{
      height: 27mm;
      width: 27mm;
      padding : 1px;
      margin:0px;
    }
    .pagebreak { page-break-after: always; } /* For page break */
    
    .row.mx-2 {
    display: block !important; /* Safari imprime mieux */
    }

}
