/*
 * This is a manifest file that'll be compiled into application.css.
 *
 * With Propshaft, assets are served efficiently without preprocessing steps. You can still include
 * application-wide styles in this file, but keep in mind that CSS precedence will follow the standard
 * cascading order, meaning styles declared later in the document or manifest will override earlier ones,
 * depending on specificity.
 *
 * Consider organizing styles into separate files for maintainability.
 */
@tailwind base;
@tailwind components;
@tailwind utilities;

@layer base {
  h1 {
    @apply text-3xl font-bold mb-4;
  }

  h2 {
    @apply text-2xl font-semibold mb-3;
  }

  h3 {
    @apply text-xl font-medium mb-2;
  }

  p {
    @apply mb-2;
  }
}



.bg-noise {
  position: relative;
}
.bg-noise::after {
  content: "";
  pointer-events: none;
  position: absolute;
  inset: 0;
  opacity: 0.08; /* Plus bas = plus subtil */
  z-index: 0;
  background-image: url("data:image/svg+xml,%3Csvg width='80' height='80' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle fill='%23AAA' fill-opacity='0.08' cx='16' cy='32' r='1'/%3E%3Ccircle fill='%23AAA' fill-opacity='0.07' cx='58' cy='20' r='0.7'/%3E%3Ccircle fill='%23AAA' fill-opacity='0.09' cx='74' cy='69' r='1'/%3E%3Ccircle fill='%23AAA' fill-opacity='0.08' cx='54' cy='38' r='0.8'/%3E%3Ccircle fill='%23AAA' fill-opacity='0.07' cx='63' cy='8' r='0.7'/%3E%3Ccircle fill='%23AAA' fill-opacity='0.09' cx='18' cy='62' r='0.6'/%3E%3Ccircle fill='%23AAA' fill-opacity='0.08' cx='38' cy='14' r='0.5'/%3E%3C/svg%3E");
  background-repeat: repeat;
}

.bg-micrograin {
  position: relative;
}
.bg-micrograin::after {
  content: "";
  pointer-events: none;
  position: absolute;
  inset: 0;
  z-index: 0;
  opacity: 0.04; /* Extrêmement subtil */
  background-image:
    repeating-linear-gradient(135deg, rgba(120,120,120,0.04) 0px, rgba(120,120,120,0.04) 1px, transparent 1px, transparent 12px),
    repeating-linear-gradient(225deg, rgba(120,120,120,0.03) 0px, rgba(120,120,120,0.03) 1px, transparent 1px, transparent 14px);
}



.vertical-header {
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  white-space: nowrap;
  min-width: 1.5rem;
  text-align: left;
  font-size: 0.75rem;
  padding: 0;
  margin: 0;
}




label abbr[title="required"] {
  display: none !important;
}