/*------------------------------------------------------------
	Theme Name:		Switch Fan
	Theme URI:		https://switchfan.org/
	Description:	Thème enfant Switch Fan basé sur Ollie
	Template:		ollie
	Version:		1.22 (2026-06-08)
	Author:			Thibaut Parent
	Author URI:		https://www.thibautparent.com
---------------------------------------------------------*/

/* Reset & Base */
*, *::before, *::after {box-sizing: border-box}
body {background-color: var(--wp--preset--color--black); color: var(--wp--preset--color--white); margin: 0}
main.wp-block-group {background: linear-gradient(to bottom, var(--wp--preset--color--dark), #2f2f2f 500px) var(--wp--preset--color--main-bg); position: relative; animation: page-fadein .6s ease forwards; margin-top: 0; margin-bottom: 0}
@keyframes page-fadein {from {opacity: 0} to {opacity: 1}}
main.wp-block-group::after {content: ""; position: fixed; bottom: 2rem; right: calc((100% - var(--wp--style--global--wide-size)) / 2); width: 100px; height: 100px; background: url('./assets/images/switchfan-logo-no-baseline.svg') no-repeat center; background-size: contain; opacity: .05; pointer-events: none; z-index: 0; transition: opacity .3s ease}
main.wp-block-group.watermark-hidden::after {opacity: 0}
img {max-width: 100%; height: auto; display: block}
a {transition: color .3s ease, background .3s ease, opacity .3s ease; text-decoration: none}

/* Layout : sections templates */
.switchfan-hero {padding-top: var(--wp--preset--spacing--md); padding-bottom: var(--wp--preset--spacing--md)}
.switchfan-title {padding-top: var(--wp--preset--spacing--md); padding-bottom: var(--wp--preset--spacing--md)}
.switchfan-content {padding-bottom: var(--wp--preset--spacing--xl)}
.switchfan-content.has-padding-top {padding-top: var(--wp--preset--spacing--lg)}
.switchfan-post-row {border-bottom: 1px solid var(--wp--preset--color--dark); padding-top: var(--wp--preset--spacing--sm); padding-bottom: var(--wp--preset--spacing--sm)}
.switchfan-post-row-sm {border-bottom: 1px solid var(--wp--preset--color--dark); padding-top: var(--wp--preset--spacing--xs); padding-bottom: var(--wp--preset--spacing--xs)}
a:hover {text-decoration: none}
ul, ol {padding-left: 1.5em}
li {list-style: square}
html {scroll-behavior: smooth}

/* Typographie */
h1, h2, h3, h4, h5, h6 {font-family: 'Barlow Condensed', sans-serif; color: var(--wp--preset--color--white); line-height: 1.2}
h1::before {content: "/"; color: var(--wp--preset--color--red); font-weight: 900}
h1::after {content: ""; display: block; width: 50px; height: 3px; background: var(--wp--preset--color--red); margin-top: .4em; animation: h1-line .8s ease forwards}
@keyframes h1-line {from {width: 0} to {width: 50px}}
.wp-block-query-title {text-transform: uppercase; letter-spacing: .02em}
.wp-block-heading.has-sm-font-size {font-size: .875rem; text-transform: uppercase; letter-spacing: .1em; margin-bottom: var(--wp--preset--spacing--sm)}
.entry-content p:not(:last-child) {margin-bottom: 1em}
.entry-content .wp-block-group p:last-child {margin-bottom: 1em}
.entry-content p + h2, .entry-content p + h3, .entry-content p + h4, .entry-content p + h5, .entry-content p + h6 {margin-top: .6em}
.entry-content h2:not(.wp-block-post-title)::after {display: block; content: ""; width: 50px; height: 3px; background: var(--wp--preset--color--red); margin: .6em 0}
.entry-content h3:not(.wp-block-post-title, .switchfan-note-label, .wp-block-accordion-heading)::after {display: block; content: ""; width: 20px; height: 3px; background: var(--wp--preset--color--red); margin: .6em 0}
.entry-content ul, .entry-content ol {padding-left: 2em; margin-bottom: 1em}
.entry-content li {margin-bottom: .3em}

/* Header */
.wp-block-template-part[data-slug="header"], header.wp-block-template-part {background: var(--wp--preset--color--black); border-top: 3px solid var(--wp--preset--color--red); border-bottom: 1px solid var(--wp--preset--color--text-light); position: sticky; top: 0; z-index: 100}
.admin-bar .wp-block-template-part[data-slug="header"], .admin-bar header.wp-block-template-part {top: 32px}
.wp-block-template-part[data-slug="header"] > .wp-block-group > .alignwide, header.wp-block-template-part > .wp-block-group > .alignwide {padding: var(--wp--preset--spacing--sm) 0; transition: padding .3s ease}
.wp-block-template-part[data-slug="header"].scrolled > .wp-block-group > .alignwide, header.wp-block-template-part.scrolled > .wp-block-group > .alignwide {padding: calc(var(--wp--preset--spacing--sm) / 2) 0}
.wp-block-template-part[data-slug="header"] .wp-block-site-logo img, header.wp-block-template-part .wp-block-site-logo img {width: 200px; max-width: 100%; height: auto; transition: width .3s ease, filter .3s ease}
.wp-block-template-part[data-slug="header"].scrolled .wp-block-site-logo img, header.wp-block-template-part.scrolled .wp-block-site-logo img {width: 140px}

/* Navigation */
.wp-block-navigation a {font-family: 'Barlow Condensed', sans-serif; font-size: var(--wp--preset--font-size--base); text-transform: uppercase; letter-spacing: .06em; color: var(--wp--preset--color--white); transition: color .3s ease; position: relative; display: inline-block; padding-bottom: 4px}
.wp-block-navigation a::after {content: ""; position: absolute; bottom: 0; left: 0; width: 100%; height: 2px; background: var(--wp--preset--color--red); transform: scaleX(0); transform-origin: left; transition: transform .3s ease}
.wp-block-navigation a:hover {color: var(--wp--preset--color--red)}
.wp-block-navigation a:hover::after {transform: scaleX(1)}
.wp-block-navigation .current-menu-item > a {text-decoration: none !important}
.wp-block-navigation .current-menu-item > a::after {transform: scaleX(1); background: var(--wp--preset--color--white); transition: background .3s ease}
.wp-block-navigation .current-menu-item > a:hover::after {background: var(--wp--preset--color--red)}
.wp-block-navigation .wp-block-navigation__container {gap: var(--wp--preset--spacing--md)}
.wp-block-navigation .wp-block-navigation__submenu-container {background: var(--wp--preset--color--dark); border: 1px solid var(--wp--preset--color--gray-dark)}
.wp-block-navigation .wp-block-navigation__submenu-container a {color: var(--wp--preset--color--gray-light); padding: .5em 1em}
.wp-block-navigation .wp-block-navigation__submenu-container a:hover {color: var(--wp--preset--color--red); background: var(--wp--preset--color--dark)}
.wp-block-navigation__responsive-container.is-menu-open {background: var(--wp--preset--color--black) !important}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {background: var(--wp--preset--color--black) !important}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {color: var(--wp--preset--color--white)}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog {background: var(--wp--preset--color--black) !important}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {color: var(--wp--preset--color--white); margin-top: var(--wp--preset--spacing--sm); margin-right: var(--wp--preset--spacing--sm)}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close svg {fill: var(--wp--preset--color--white)}

/* Liens */
.entry-content p a, .wp-block-post-content p a, .entry-content ul li a, .wp-block-post-content ul li a, .entry-content ol li a, .wp-block-post-content ol li a {color: inherit; text-decoration: underline; text-decoration-color: currentColor; text-underline-offset: 3px; transition: text-decoration-color .3s ease}
.entry-content p a:hover, .wp-block-post-content p a:hover, .entry-content ul li a:hover, .wp-block-post-content ul li a:hover, .entry-content ol li a:hover, .wp-block-post-content ol li a:hover {color: inherit; text-decoration-color: var(--wp--preset--color--red)}
.page .entry-content h2[id], .page .entry-content h3[id] {scroll-margin-top: 80px}
.single .entry-content h2[id], .single .entry-content h3[id] {scroll-margin-top: 120px}

/* Images */
.entry-content img, .wp-block-post-content img, .wp-block-image img {border-radius: 6px; margin-bottom: 1.3em; margin-left: auto; margin-right: auto}
.wp-block-post-featured-image img {width: 100%; height: auto; border-radius: 6px}
.entry-content figure.wp-block-image, .wp-block-post-content figure.wp-block-image {margin-left: auto; margin-right: auto; text-align: center}

/* Blockquote */
blockquote, .wp-block-quote {border: none; background: none; padding: 1em 1em 1em 3em; margin-left: 0; margin-right: 0; color: var(--wp--preset--color--white); font-style: italic; position: relative}
blockquote::before, .wp-block-quote::before {content: "\201C"; font-family: 'Barlow Condensed', sans-serif; font-size: 4rem; color: var(--wp--preset--color--red); position: absolute; top: .1em; left: 0; line-height: 1}

/* Boutons */
.wp-block-buttons {gap: .6em; margin-bottom: 1.3em; justify-content: center}
.wp-block-button__link, .wp-element-button, input[type="submit"], button {background: var(--wp--preset--color--red); color: var(--wp--preset--color--white); border: none; border-radius: 6px; padding: .7em 1.8em; font-family: 'Barlow Condensed', sans-serif; font-weight: 700; font-size: .875rem; text-transform: uppercase; letter-spacing: .05em; cursor: pointer; transition: background .3s ease}
.wp-block-button__link:hover, .wp-element-button:hover, input[type="submit"]:hover, button:hover {background: var(--wp--preset--color--red-dark); color: var(--wp--preset--color--white)}

/* Accordéon */
.wp-block-accordion {background: var(--wp--preset--color--dark); border-radius: 6px; border-left: 3px solid var(--wp--preset--color--red); overflow: hidden; margin-bottom: 1.3em}
.wp-block-accordion-item {border-bottom: 1px solid var(--wp--preset--color--gray-dark)}
.wp-block-accordion-item:last-child {border-bottom: none}
.wp-block-accordion-heading {margin: 0}
.wp-block-accordion-heading h3 {margin: 0}
.wp-block-accordion-heading h3::after {display: none}
.wp-block-accordion-heading button {background: none; border: none; width: 100%; text-align: left; padding: 1em 1.5em; cursor: pointer; display: flex; align-items: center; justify-content: space-between; transition: background .3s ease}
.wp-block-accordion-heading button:hover {background: var(--wp--preset--color--gray-dark)}
.wp-block-accordion-heading__toggle-title {font-family: 'Barlow Condensed', sans-serif; font-size: var(--wp--preset--font-size--sm); font-weight: 700; text-transform: uppercase; letter-spacing: .05em; color: var(--wp--preset--color--white); text-decoration: none}
.wp-block-accordion-heading__toggle-title:hover {text-decoration: none}
.wp-block-accordion-heading button:hover .wp-block-accordion-heading__toggle-title {color: var(--wp--preset--color--white); text-decoration: none}
.wp-block-accordion-panel {padding: 1em 1.5em; color: var(--wp--preset--color--text-light)}

/* Catégorie / Tag badge */
.taxonomy-category a {background: var(--wp--preset--color--red); color: var(--wp--preset--color--white); padding: .2em .6em; border-radius: 6px; font-family: 'Barlow Condensed', sans-serif; font-size: .75rem; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; transition: background .3s ease}
.taxonomy-category a:hover {background: var(--wp--preset--color--red-dark); color: var(--wp--preset--color--white)}
.taxonomy-post_tag {display: inline-flex; flex-wrap: wrap; gap: .4em}
.taxonomy-post_tag a {background: var(--wp--preset--color--dark); color: var(--wp--preset--color--text-light); padding: .2em .6em; border-radius: 6px; font-family: 'Barlow Condensed', sans-serif; font-size: .75rem; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; transition: background .3s, color .3s}
.taxonomy-post_tag a:hover {background: var(--wp--preset--color--red); color: var(--wp--preset--color--white)}
.wp-block-post-terms a, .post-category a {padding: .2em .6em; border-radius: 6px; font-family: 'Barlow Condensed', sans-serif; font-size: .75rem; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; transition: background .3s ease}

/* Cards / Query Loop */
.wp-block-query .wp-block-post {border-radius: 6px; overflow: hidden; transition: transform .3s ease}
.wp-block-query .wp-block-post:hover {transform: translateY(-2px)}
.wp-block-query .wp-block-post-featured-image img {border-radius: 0; width: 100%; height: auto; margin-bottom: 0}
.wp-block-query .wp-block-post-title, .wp-block-query h3.wp-block-post-title {font-size: var(--wp--preset--font-size--base)}
.switchfan-hero .wp-block-column:first-child .wp-block-post-title, .switchfan-hero .wp-block-column:first-child h3.wp-block-post-title {font-size: var(--wp--preset--font-size--xl)}
.switchfan-hero .wp-block-column:last-child .wp-block-post-title, .switchfan-hero .wp-block-column:last-child h3.wp-block-post-title {font-size: var(--wp--preset--font-size--lg)}
.switchfan-content .wp-block-post-title, .switchfan-content h2.wp-block-post-title, .switchfan-content h3.wp-block-post-title {font-size: var(--wp--preset--font-size--lg)}
.wp-block-query .wp-block-post-title a {color: var(--wp--preset--color--white); font-family: 'Barlow Condensed', sans-serif; transition: color .3s ease}
.wp-block-query .wp-block-post-title a:hover {color: var(--wp--preset--color--text-light)}
.wp-block-query .wp-block-post:hover .wp-block-post-title a {color: var(--wp--preset--color--text-light)}
.wp-block-query .wp-block-post-date {color: var(--wp--preset--color--text-light); font-size: .875rem}
.wp-block-query .wp-block-post-excerpt {color: var(--wp--preset--color--text-light); font-size: .9rem}

/* Titre page / archive */
.switchfan-search-count {color: var(--wp--preset--color--gray-light); font-size: var(--wp--preset--font-size--sm)}

/* Titres section */
.switchfan-hero h2.wp-block-heading, .switchfan-content > h2.wp-block-heading {font-size: var(--wp--preset--font-size--xl); text-transform: uppercase; letter-spacing: .08em; margin-bottom: var(--wp--preset--spacing--sm)}
.switchfan-hero h2.wp-block-heading::before, .switchfan-content > h2.wp-block-heading::before {content: "/"; color: var(--wp--preset--color--red); font-weight: 900}
.switchfan-sidebar h2.wp-block-heading {font-size: 1rem; text-transform: uppercase; letter-spacing: .08em; margin-bottom: var(--wp--preset--spacing--sm)}
.switchfan-sidebar h2.wp-block-heading::before {content: "/"; color: var(--wp--preset--color--red); font-weight: 900}

/* Séparateur */
.wp-block-separator {border-color: var(--wp--preset--color--dark); border-width: 1px; margin: 2em 0}

/* Page auteur */
.switchfan-author-box {display: flex; gap: var(--wp--preset--spacing--md); align-items: flex-start; padding: var(--wp--preset--spacing--md) 0}
.switchfan-author-avatar img {border-radius: 50%; width: 120px; height: 120px}
.switchfan-author-info {flex: 1}
.switchfan-author-name {margin: 0 0 .4em}
.switchfan-author-realname {font-size: var(--wp--preset--font-size--base); color: var(--wp--preset--color--text-light); font-weight: 400}
.switchfan-author-links {display: flex; gap: var(--wp--preset--spacing--sm); margin-bottom: var(--wp--preset--spacing--sm)}
.switchfan-author-links a {color: var(--wp--preset--color--text-light); transition: filter .3s ease}
.switchfan-author-links a:hover {filter: drop-shadow(0 0 6px var(--wp--preset--color--red)) drop-shadow(0 0 15px var(--wp--preset--color--red))}
.switchfan-author-description {color: var(--wp--preset--color--text-light); font-size: .9rem; line-height: 1.65}

/* Pagination */
.wp-block-query-pagination {align-items: center; gap: var(--wp--preset--spacing--xs); margin-top: var(--wp--preset--spacing--lg)}
.wp-block-query-pagination a, .wp-block-query-pagination span, .page-numbers {display: inline-flex; align-items: center; justify-content: center; min-width: 40px; height: 40px; padding: 0 .5em; background: var(--wp--preset--color--dark); color: var(--wp--preset--color--white); border-radius: 6px; font-weight: 600; font-size: var(--wp--preset--font-size--sm); text-decoration: none; transition: background .3s, color .3s}
.wp-block-query-pagination a:hover, .page-numbers:hover {background: var(--wp--preset--color--red); color: var(--wp--preset--color--white)}
.wp-block-query-pagination .current, .page-numbers.current {background: var(--wp--preset--color--red); color: var(--wp--preset--color--white); cursor: default}
.wp-block-query-pagination .dots, .page-numbers.dots {background: none; min-width: auto; padding: 0}

/* Article single */
.wp-block-post-title {font-size: var(--wp--preset--font-size--xxxl); line-height: 1.15}
.wp-block-post-content {color: var(--wp--preset--color--text-light); line-height: 1.65}
.switchfan-title .wp-block-post-author {border: none; padding: 0; margin: 0; font-size: var(--wp--preset--font-size--sm)}
.switchfan-title .wp-block-post-author__name {color: var(--wp--preset--color--white)}
.switchfan-title .wp-block-post-author__name a {font-size: var(--wp--preset--font-size--sm)}
.switchfan-title .wp-block-post-date {font-size: var(--wp--preset--font-size--sm)}
.switchfan-title .wp-block-group.is-layout-flex {gap: .3em}
.switchfan-title .wp-block-group.is-layout-flex > p {font-size: var(--wp--preset--font-size--sm); margin: 0}
.wp-block-post-author__bio {color: var(--wp--preset--color--gray-light); font-size: .9rem}
.wp-block-post-author__avatar img {border-radius: 50%}
.wp-block-post-navigation-link a {color: var(--wp--preset--color--gray-light); font-weight: 600; text-transform: uppercase; font-size: .875rem; transition: color .3s ease}
.wp-block-post-navigation-link a:hover {color: var(--wp--preset--color--red)}
.switchfan-title .wp-block-post-terms {font-size: 0; letter-spacing: 0; display: inline-flex; flex-wrap: wrap; gap: .4em}
.switchfan-title .wp-block-post-terms a {font-size: .75rem; letter-spacing: .05em; white-space: nowrap}
.switchfan-title .wp-block-post-terms__separator {display: none}
.switchfan-title .taxonomy-post_tag {display: contents}

/* Sidebar */
.wp-block-search__inside-wrapper {background: var(--wp--preset--color--black); border: 1px solid var(--wp--preset--color--gray-dark); border-radius: 6px}
.wp-block-search__inside-wrapper .wp-block-search__input, input.wp-block-search__input[type="search"], input.wp-block-search__input {background-color: var(--wp--preset--color--black) !important; border: none; color: var(--wp--preset--color--white); padding: .5em .8em; box-shadow: none !important}
.wp-block-search__inside-wrapper:focus-within {border-color: var(--wp--preset--color--red); box-shadow: 0 0 0 1px var(--wp--preset--color--red)}
.wp-block-search__inside-wrapper .wp-block-search__input:focus, input.wp-block-search__input:focus {background-color: var(--wp--preset--color--black) !important; outline: none; box-shadow: none !important}
.wp-block-search__button {background: var(--wp--preset--color--red); color: var(--wp--preset--color--white); border: none; border-radius: 6px; padding: .5em 1em; cursor: pointer; transition: background .3s ease}
.wp-block-search__button:hover {background: var(--wp--preset--color--red-dark)}
.switchfan-sidebar .wp-block-post-featured-image {flex-shrink: 0}
.switchfan-sidebar .wp-block-post-featured-image img {width: 54px; height: 30px; object-fit: cover}
.switchfan-content .wp-block-post-featured-image {flex-shrink: 0}
.switchfan-content .wp-block-post-featured-image img {width: 110px; height: 62px; object-fit: cover}
.wp-block-latest-posts li {border-bottom: 1px solid var(--wp--preset--color--dark); padding: .6em 0; list-style: none}
.wp-block-latest-posts li:last-child {border-bottom: none}
.wp-block-latest-posts a {color: var(--wp--preset--color--gray-light); font-size: .9rem; transition: color .3s ease}
.wp-block-latest-posts a:hover {color: var(--wp--preset--color--red)}

/* Sommaire */
.switchfan-toc ul {list-style: none; padding: 0 0 0 1.3em; margin: 0}
.switchfan-toc li {padding: .3em 0; border-bottom: 1px solid var(--wp--preset--color--dark)}
.switchfan-toc li:last-child {border-bottom: none}
.switchfan-toc a {color: var(--wp--preset--color--white); font-size: .875rem; transition: color .3s ease}
.switchfan-toc a:hover {color: var(--wp--preset--color--gray-light)}

/* Footer */
.wp-block-template-part[data-slug="footer"], footer.wp-block-template-part {background: var(--wp--preset--color--dark); border-top: 1px solid var(--wp--preset--color--text-light); color: var(--wp--preset--color--text-light)}
.switchfan-footer-main {padding: var(--wp--preset--spacing--sm) 0}
.switchfan-footer-main .wp-social-link a {transition: filter .3s ease}
.switchfan-footer-main .wp-social-link a:hover {filter: drop-shadow(0 0 6px var(--wp--preset--color--red)) drop-shadow(0 0 15px var(--wp--preset--color--red))}
footer .wp-block-site-logo, .wp-block-template-part[data-slug="footer"] .wp-block-site-logo {margin-bottom: var(--wp--preset--spacing--md)}
footer .wp-block-site-logo img, .wp-block-template-part[data-slug="footer"] .wp-block-site-logo img {width: 200px; max-width: 100%; height: auto}
.wp-block-site-logo img {transition: filter .3s ease}
.wp-block-site-logo img:hover {filter: drop-shadow(0 0 6px var(--wp--preset--color--red)) drop-shadow(0 0 15px var(--wp--preset--color--red))}
.switchfan-footer-content h2 {font-size: var(--wp--preset--font-size--xxl); line-height: 1.25; margin-bottom: .6em}
.switchfan-footer-content h2::after {display: block; content: ""; width: 50px; height: 3px; background: var(--wp--preset--color--red); margin: .6em 0}
.switchfan-footer-content p {color: var(--wp--preset--color--text-light); font-size: .875rem; line-height: 1.65}
.switchfan-footer-content p:not(:last-child) {margin-bottom: 1em}
.switchfan-footer-content p a {color: inherit; text-decoration: underline; text-decoration-color: currentColor; text-underline-offset: 3px; position: relative; transition: text-decoration-color .3s ease}
.switchfan-footer-content p a:hover {color: inherit; text-decoration-color: transparent}
.switchfan-footer-content p a::after {content: ""; position: absolute; bottom: -1px; left: 0; width: 100%; height: 2px; background: var(--wp--preset--color--red); transform: scaleX(0); transform-origin: left; transition: transform .3s ease}
.switchfan-footer-content p a:hover::after {transform: scaleX(1)}
.switchfan-footer-content .wp-block-site-title {font-size: var(--wp--preset--font-size--xxl); font-family: 'Barlow Condensed', sans-serif; font-weight: 700; line-height: 1.25; margin-bottom: .6em}
.switchfan-footer-content .wp-block-site-title::after {display: block; content: ""; width: 50px; height: 3px; background: var(--wp--preset--color--red); margin: .6em 0}
.switchfan-footer-copyright {padding: var(--wp--preset--spacing--sm) 0; border-top: 1px solid var(--wp--preset--color--gray-dark); gap: var(--wp--preset--spacing--md)}
.switchfan-footer-copyright p {font-family: 'Barlow Condensed', sans-serif; font-size: .875rem; color: var(--wp--preset--color--text-light); text-transform: uppercase; letter-spacing: .05em}
.switchfan-footer-copyright p a {color: inherit; text-decoration: underline; text-decoration-color: currentColor; text-underline-offset: 3px; position: relative; transition: text-decoration-color .3s ease}
.switchfan-footer-copyright p a:hover {text-decoration-color: transparent}
.switchfan-footer-copyright p a::after {content: ""; position: absolute; bottom: -1px; left: 0; width: 100%; height: 2px; background: var(--wp--preset--color--red); transform: scaleX(0); transform-origin: left; transition: transform .3s ease}
.switchfan-footer-copyright p a:hover::after {transform: scaleX(1)}
.switchfan-footer-copyright .wp-block-navigation a {font-family: 'Barlow Condensed', sans-serif; font-size: .875rem; color: var(--wp--preset--color--text-light) !important; text-transform: uppercase; letter-spacing: .05em; text-decoration: underline; text-decoration-color: currentColor; text-underline-offset: 3px; padding: 0; position: relative; transition: text-decoration-color .3s ease}
.switchfan-footer-copyright .wp-block-navigation a:hover {text-decoration-color: transparent}
.switchfan-footer-copyright .wp-block-navigation a::after {content: ""; position: absolute; bottom: -1px; left: 0; width: 100%; height: 2px; background: var(--wp--preset--color--red); transform: scaleX(0); transform-origin: left; transition: transform .3s ease}
.switchfan-footer-copyright .wp-block-navigation a:hover::after {transform: scaleX(1)}
.switchfan-footer-copyright .wp-block-navigation {gap: var(--wp--preset--spacing--sm)}

/* Back to top */
#back-to-top {position: fixed; bottom: 2rem; right: 2rem; width: 40px; height: 40px; min-width: 40px; min-height: 40px; padding: 0; background: var(--wp--preset--color--main-bg); color: var(--wp--preset--color--white); border: none; border-radius: 6px; cursor: pointer; font-size: 1.2rem; display: flex; align-items: center; justify-content: center; opacity: 0; pointer-events: none; transition: opacity .3s ease, background .3s ease; z-index: 999; line-height: 1}
#back-to-top.visible {opacity: 1; pointer-events: auto}
#back-to-top:hover {background: var(--wp--preset--color--red)}

/* Forminator */
.forminator-custom-form .forminator-row input, .forminator-custom-form .forminator-row textarea {background: transparent !important}
.forminator-ui.forminator-design--default .forminator-error-message {color: var(--wp--preset--color--orange) !important; font-size: .85rem !important; padding: 0 !important; background: transparent !important}
.forminator-ui#forminator-module-38701.forminator-design--default .forminator-label .forminator-required {color: var(--wp--preset--color--orange) !important}
.forminator-ui.forminator-design--default .forminator-button-submit {display: block !important; margin: 0 auto !important; background: var(--wp--preset--color--red) !important; color: var(--wp--preset--color--white) !important; border-radius: 6px !important; padding: .7em 1.8em; font-family: 'Barlow Condensed', sans-serif !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: .05em !important; cursor: pointer !important; transition: background .3s ease !important}
.forminator-ui.forminator-design--default .forminator-button-submit:hover {background: var(--wp--preset--color--red-dark) !important}

/* Rating */
.post-ratings img {cursor: pointer}
.post-ratings .post-ratings-text {display: none}

/* Review Notes */
.switchfan-review-notes {margin-bottom: 1em}
.switchfan-note {display: flex; align-items: center; gap: .8em; padding: .5em 0}
.switchfan-note-label {font-family: 'Barlow Condensed', sans-serif; font-size: var(--wp--preset--font-size--xl); text-transform: uppercase; letter-spacing: .05em; color: var(--wp--preset--color--white); min-width: 150px}
h3.switchfan-note-label {margin: 0; line-height: 1}
.switchfan-note-bar {flex: 1; height: 10px; background: var(--wp--preset--color--gray); border-radius: 4px; overflow: hidden}
.switchfan-note-fill {height: 100%; width: 0; background: var(--wp--preset--color--red); border-radius: 4px; transition: width 1s ease}
.switchfan-note-fill.is-visible {width: var(--note)}
.switchfan-note-value {font-family: 'Barlow Condensed', sans-serif; font-size: var(--wp--preset--font-size--xl); color: var(--wp--preset--color--white); min-width: 40px; text-align: right}
.switchfan-review-badge {display: inline-block; width: 40px; height: 40px; min-width: 2.5em: ;border-radius: 50%; background: conic-gradient(var(--wp--preset--color--red) calc(var(--score) * 1%), var(--wp--preset--color--gray-dark) 0); position: relative; vertical-align: middle; margin-left: .4em; flex-shrink: 0}
.switchfan-review-badge::before {content: ""; position: absolute; inset: 4px; border-radius: 50%; background: var(--wp--preset--color--dark)}
.switchfan-review-badge::after {content: attr(data-score); position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; font-family: 'Barlow Condensed', sans-serif; font-size: .9rem; font-weight: 900; color: var(--wp--preset--color--white); z-index: 1}
.wp-block-query .switchfan-review-badge {width: auto; height: auto; border-radius: 4px; background: var(--wp--preset--color--dark); padding: .05em .4em .3em; margin-left: .3em; line-height: 1; vertical-align: initial}
.wp-block-query .switchfan-review-badge::before {display: none}
.wp-block-query .switchfan-review-badge::after {content: attr(data-score) "/100"; position: static; display: inline; font-family: 'Barlow Condensed', sans-serif; font-weight: 700; color: var(--wp--preset--color--white); transition: color .3s ease}
.wp-block-query .wp-block-post:hover .switchfan-review-badge::after {color: var(--wp--preset--color--text-light)}

/* Vidéos / iframes */
.wp-block-embed, .wp-block-video {margin: 1.5em auto; width: 100%; max-width: 100%}
.wp-block-embed__wrapper {position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; width: 100%}
.wp-block-embed__wrapper iframe {position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: 6px}
.entry-content p > iframe, .entry-content iframe {width: 100% !important; height: auto !important; aspect-ratio: 16/9; border-radius: 6px}

/* Lightbox */
#tipi-lightbox {display: none; position: fixed; inset: 0; background: rgba(0,0,0,.75); z-index: 9999; align-items: center; justify-content: center; cursor: pointer; flex-direction: column}
#tipi-lightbox.active {display: flex}
#tipi-lightbox figure {position: relative; margin: 0; text-align: center; cursor: default}
#tipi-lightbox img {max-width: 90vw; max-height: 80vh; border-radius: 6px; display: block; box-shadow: 0 0 40px rgba(0,0,0,.8)}
#tipi-lightbox figcaption {color: var(--wp--preset--color--white); font-size: .9rem; text-align: center; margin-top: .6em; opacity: .8}
#tipi-lightbox-close {position: absolute; top: 1rem; right: 1.2rem; color: var(--wp--preset--color--white); font-size: 2rem; line-height: 1; cursor: pointer; background: none; border: none; padding: 0; opacity: .7; transition: opacity .2s}
#tipi-lightbox-close:hover {opacity: 1}
#tipi-lightbox-prev, #tipi-lightbox-next {position: absolute; top: 50%; transform: translateY(-50%); color: var(--wp--preset--color--white); font-size: 3rem; line-height: 1; cursor: pointer; background: none; border: none; padding: 0 1rem; opacity: .6; transition: opacity .2s; z-index: 10000}
#tipi-lightbox-prev {left: 0}
#tipi-lightbox-next {right: 0}
#tipi-lightbox-prev:hover, #tipi-lightbox-next:hover {opacity: 1}

/* Affiliation */
.switchfan-affiliate {margin-top: 2em; padding: 1.5em; background: var(--wp--preset--color--dark); border-radius: 6px; border-left: 3px solid var(--wp--preset--color--red)}
.switchfan-affiliate h2 {font-size: var(--wp--preset--font-size--lg); margin: 0 0 .8em}
.switchfan-affiliate h2::after {display: block; content: ""; width: 50px; height: 3px; background: var(--wp--preset--color--red); margin: .6em 0}
.switchfan-affiliate-grid {display: flex; flex-direction: column; gap: .6em}
.switchfan-affiliate-row {display: flex; flex-direction: column; align-items: flex-start; gap: .5em; padding: .8em 0; border-bottom: 1px solid var(--wp--preset--color--gray-dark)}
.switchfan-affiliate-row:last-child {border-bottom: none}
.switchfan-affiliate-game {font-family: 'Barlow Condensed', sans-serif; font-size: var(--wp--preset--font-size--base); font-weight: 700; color: var(--wp--preset--color--white); min-width: 0; flex-shrink: 1}
.switchfan-affiliate-links {display: flex; flex-wrap: wrap; gap: .4em; flex-shrink: 0}
.switchfan-affiliate-btn {background: var(--wp--preset--color--gray-dark); color: var(--wp--preset--color--white); padding: .3em .8em; border-radius: 4px; font-family: 'Barlow Condensed', sans-serif; font-size: .75rem; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; transition: background .3s ease}
.switchfan-affiliate-btn:hover {background: var(--wp--preset--color--red); color: var(--wp--preset--color--white)}

/* Accessibilité */
:focus-visible {outline: 2px solid var(--wp--preset--color--red); outline-offset: 2px}
.screen-reader-text {border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px}

/* Responsive */
@media screen and (max-width: 782px) {
	.admin-bar .wp-block-template-part[data-slug="header"], .admin-bar header.wp-block-template-part {top: 46px}
	.wp-block-template-part[data-slug="header"] .wp-block-site-logo img, header.wp-block-template-part .wp-block-site-logo img {width: 150px}
	footer .wp-block-site-logo img, .wp-block-template-part[data-slug="footer"] .wp-block-site-logo img {width: 150px}
	.wp-block-site-logo img {max-width: 100%; height: auto}
	.wp-block-site-logo {overflow: visible; flex-shrink: 1; min-width: 0}
	.wp-block-site-logo a {display: inline-block}
	.wp-block-template-part[data-slug="header"] .alignwide, header.wp-block-template-part .alignwide, .wp-block-template-part[data-slug="footer"] .alignwide, footer.wp-block-template-part .alignwide {padding-left: var(--wp--preset--spacing--sm); padding-right: var(--wp--preset--spacing--sm); box-sizing: border-box; max-width: 100%}
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {text-align: center}
	.switchfan-author-box h1::after {margin-left: auto; margin-right: auto}
	.wp-block-query {grid-template-columns: 1fr}
	.wp-block-post-navigation-link a {font-size: .8rem}
	.switchfan-author-box {flex-direction: column; align-items: center; text-align: center}
	.switchfan-author-links {justify-content: center}
	#tipi-lightbox img {max-width: 80vw}
	#tipi-lightbox-prev, #tipi-lightbox-next {font-size: 2rem}
	#back-to-top {bottom: 1rem; right: 1rem}
	.switchfan-footer-copyright {flex-direction: column; align-items: center}
	.switchfan-footer-copyright .wp-block-navigation a {text-decoration: none}
	.switchfan-footer-copyright .wp-block-navigation a:hover {text-decoration: none}
}

@media screen and (max-width: 480px) {
	h1, .wp-block-post-title {font-size: 1.875rem}
	h2 {font-size: 1.5rem}
}
