/* Marges, paddings, dimensions, flexbox */ *, html, body { margin: 0; padding: 0; box-sizing: border-box; } h1, h2, h3, h4, h5, h6 { /* margin: 20px 0 20px 0; */ padding: 10px; } p, ul { padding: 10px; } p.date { font-size: 0.8em; text-align: right; } .notification { padding: 10px; } .notification ul { list-style-type: none; } .notification ul li { padding: 10px; margin: 5px 0; } .container, .menu { padding: 0; margin-bottom: 10px; } .container { position: relative; } .menu h2 { padding: 10px; margin: 0 0 20px; width: 100%; display: block; box-sizing: border-box; text-align: center; font-size: 2em; } .menu ul { list-style: none; width: 100%; } .container h2 { padding: 10px; margin: 0 0 20px; width: 100%; display: block; box-sizing: border-box; text-align: center; font-size: 2em; } /* Menu horizontal */ .menu-horizontal { position: relative; width: 100%; } .menu-horizontal ul { display: flex; list-style: none; padding: 0; margin: 0; justify-content: center; } .menu-horizontal ul li { position: relative; } .menu-horizontal ul li a { display: block; padding: 10px 20px; text-decoration: none; } .menu-horizontal .dropdown { display: none; position: absolute; min-width: 200px; z-index: 1000; top: 100%; left: 0; } .menu-horizontal li:hover .dropdown { display: block; } .menu-horizontal .dropdown li { width: 100%; border: none; } .menu-horizontal .dropdown a { margin: 10px; padding: 10px; font-size: 0.8rem; } .badge { padding: 2px; } /* Style du menu burger */ .burger-menu { display: none; width: 100%; padding: 10px; } .burger-icon { background: none; border: none; width: 30px; height: 30px; padding: 0; cursor: pointer; display: flex; flex-direction: column; justify-content: space-between; } .burger-icon span { display: block; width: 30px; height: 3px; } @media screen and (max-width: 768px) { body { margin-top: 80px; } .burger-menu { display: block; position: fixed; top: 0; left: 0; width: 100%; z-index: 1000; padding: 10px; } .menu-horizontal { display: none; position: fixed; top: 50px; /* Hauteur du burger menu */ left: 0; width: 100%; height: auto; z-index: 999; } .menu-horizontal.active { display: block; } .menu-horizontal ul { flex-direction: column; width: 100%; padding: 0; } .menu-horizontal ul li { width: 100%; border-bottom: 1px solid #333; } .menu-horizontal ul li a { padding: 15px; display: block; width: 100%; } /* Style des sous-menus sur mobile */ .menu-horizontal ul ul { position: static; display: none; width: 100%; background: #222; } .menu-horizontal li.active > ul { display: block; } .menu-horizontal .dropdown { position: static; width: 100%; box-shadow: none; } .menu-horizontal .dropdown li { padding-left: 20px; /* Indentation pour les sous-menus */ } .menu-horizontal li:hover .dropdown { display: none; /* Désactive l'affichage au hover sur mobile */ } .menu-horizontal li.active .dropdown { display: block; } /* Animation du burger quand actif */ .burger-menu.active .burger-icon span:first-child { transform: rotate(45deg) translate(8px, 6px); } .burger-menu.active .burger-icon span:nth-child(2) { opacity: 0; } .burger-menu.active .burger-icon span:last-child { transform: rotate(-45deg) translate(8px, -6px); } /* Styles des sous-menus sur mobile */ .menu-horizontal .dropdown { position: static; width: 100%; box-shadow: none; background: #222; } .menu-horizontal li:hover .dropdown { display: none; /* Désactive l'affichage au hover sur mobile */ } .menu-horizontal li.active .dropdown { display: block; /* Affiche uniquement quand .active est présent */ } } @media screen and (min-width: 769px) { .burger-menu { display: none; } .menu-horizontal { display: block !important; } } .news-header, .post-card-header { display: flex; flex-direction: row; } .contrib { margin: 10px; padding: 10px; } .contrib a { font-size: 1.3rem; } span.post-offline { font-weight:bold; margin:5px; background-image: url('../../img/icons/shield-red-cross.png'); width: 25px; height: 25px; } span.post-online { font-weight:bold; margin:5px; background-image: url('../../img/icons/shield-green-v.png'); width: 25px; height: 25px; } /* forum */ .forum { display: flex; flex-direction: column; margin: 0 0 10px 0; } .forum .row { justify-content: space-between; } .forum h3 { margin: 0; } .forum-header { display: flex; flex-direction: row; border: 1px 1px 0 1px solid; margin: 10px 10px -10px 10px; } .forum-column, .forum-column-detail { flex: 1; flex-direction: column; border: 1px solid; padding: 10px; } .forum-column:nth-child(1) { flex: 2; } .forum-column:nth-child(2), .forum-column:nth-child(3) { flex: 1; } .forum-column-detail:nth-child(1) { flex: 1; } .forum-column-detail:nth-child(2) { flex: 4; } .forum-column-detail ul { list-style-type: none; padding: 0; } .forum-body { display: flex; flex-direction: column; border: 0 1px 1px 1px solid; margin: 10px 10px -10px 10px; } .forum-body img { max-width: 100%; } .forum-row { display: flex; flex-direction: row; border: 0 1px 0 1px solid; } .stats_forum { margin: 20px 0 10px 0; border-top: 2px solid } .stats_forum ul { list-style-type: none; border: 1px solid; padding: 10px; } .stats_forum ul li { margin: 5px 0; } ul.breadcrumbs { display: flex; flex-direction: row; font-size: 1rem; list-style-type: none; margin: 10px 0 10px 0; } ul.breadcrumbs li { margin: 0 5px 0 5px; } ul.breadcrumbs li a { text-decoration: none; } /* Pagination */ ul.pagination { display: flex; flex-direction: row; list-style-type: none; margin: 10px 0 10px 0; } ul.pagination li.page-item { margin: 0 5px 0 5px; } ul.pagination li.page-item a { text-decoration: none; } .page-link { padding: 5px 10px; border: 2px solid; text-align: center; text-decoration: none; display: inline-block; width: auto; max-width: max-content; font-size: 0.8rem; cursor: pointer; } li.disabled { pointer-events: none; cursor: default; } .footer { text-align: center; } table { border-collapse: separate; border-spacing: 2px; } td, th { padding: 4px; } /* Ajout d'un compteur de visiteurs style années 2000 */ .visitor-counter { padding: 5px; text-align: center; margin: 10px 0; } @media screen and (max-width: 768px) { .warning-announce-not-mobile-compatible { display: block; position: absolute; padding: 10px; margin: 10px; border: 1px solid orange; background-color: rgb(255, 215, 140); color: rgb(152, 120, 60); text-shadow: none; z-index: 1000; } }