/* Polices Stitch "Digital Atelier" : Manrope (titres/UI) + Newsreader (corps éditorial). Voir docs-site-interne/REFONTE-VISUELLE.md. Les classes font-orbitron-* héritées vivent encore côté app/assets/main.css tant que la migration typo n'est pas faite. */ @import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Newsreader:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap'); @import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,0,0&display=swap'); @tailwind base; @tailwind components; @tailwind utilities; :root { --background: #ffffff; --foreground: #171717; } /* Icônes Material Symbols : utilitaire name. */ .material-symbols-outlined { font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24; display: inline-block; line-height: 1; text-transform: none; letter-spacing: normal; word-wrap: normal; white-space: nowrap; direction: ltr; -webkit-font-feature-settings: 'liga'; -webkit-font-smoothing: antialiased; } @media (prefers-color-scheme: dark) { :root { --background: #0a0a0a; --foreground: #ededed; } } html { overflow-x: hidden; max-width: 100%; } body { color: var(--foreground); background: var(--background); font-family: Arial, Helvetica, sans-serif; max-width: 100%; min-width: 0; overflow-x: hidden; } @keyframes fade-in { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } } .animate-fade-in { animation: fade-in 0.5s ease-out; } @keyframes blink { 0% { opacity: 0; } 50% { opacity: 1; } 100% { opacity: 0; } } .wait-animation .dot-1 { animation: blink 1s infinite 0s; } .wait-animation .dot-2 { animation: blink 1s infinite 0.2s; } .wait-animation .dot-3 { animation: blink 1s infinite 0.4s; } .bg-wallpaper { background-image: url('./assets/images/wallpapersite_resultat.webp'); background-size: cover; background-position: center; background-repeat: no-repeat; min-height: 100vh; /* 100% plutôt que 100vw évite le débordement horizontal (barre de scroll) au zoom */ width: 100%; min-width: 0; left: 0; right: 0; } @media (max-width: 768px) { .bg-wallpaper { /* Ne pas utiliser 200vw : double la largeur de page et déstabilise le zoom / dézoom */ width: 100%; min-width: 0; } } html, body { width: 100%; height: 100%; margin: 0; padding: 0; } .container { width: 100%; height: 100%; position: relative; } /* Gestion du footer */ footer { text-align: center; padding: 16px; background-color: rgba(255, 255, 255, 0.5); backdrop-filter: blur(10px); border-radius: 8px; } /* Responsive footer */ @media (max-width: 768px) { footer { padding: 12px; } } @media (max-width: 768px) { .max-w-7xl { max-width: 100%; } } @media (prefers-reduced-motion: reduce) { .mobile-drawer-root, .mobile-drawer-panel { transition: none !important; } }