/* ======================================== EXPERT EUROPE - CSS PERSONNALISÉ Version optimisée avec hovers cohérents ======================================== *//* === VOS STYLES ORIGINAUX === */.widget-slider-static { margin-top: -46px;}.bg-bleu-europe { background-color: #1a4ba7;}#profile-content-languages,#id_button_google { display: none;}/* LOGIN - Section commentée (décommentez si nécessaire) *//*#widget1 > div > div.swiper-wrapper.swiper-wrapper-authentification > div.swiper-slide.swiper-slide-next > div > div > div > p,#widget1 > div > div.swiper-wrapper.swiper-wrapper-authentification > div.swiper-slide.swiper-slide-prev > div > div > div > p,#widget1 > div > div.swiper-wrapper.swiper-wrapper-authentification > div.swiper-slide.swiper-slide-active > div > div > div > p,#widget1 > div > div.swiper-wrapper.swiper-wrapper-authentification > div:nth-child(1) > div > div > div > p,#page-login > div.page-login > div > div > div > div > div > div > div.instance-security-registration-card.col-md-6.col-12 > div > div > div > div.text-center.pt-4.instance-security-register-standard { display: none;}*//* Masquage likes */#like-icon { display: none;}/* === HOVERS CARTES CONFÉRENCES & STAKEHOLDERS === *//* UNIQUEMENT pour la grille speakers (cartes multiples cliquables) */.speaker-card { transition: transform 0.3s ease, box-shadow 0.3s ease;}.speaker-card:hover { transform: translateY(-5px) !important; box-shadow: 0 12px 30px rgba(0, 61, 122, 0.18) !important;}/* .host-card = carte statique unique → PAS de hover sur la carte globale */.host-card { transition: none;}/* === LOGOS === */.logo-link { display: inline-block; transition: transform 0.3s ease, opacity 0.3s ease;}.logo-link:hover { transform: scale(1.1); opacity: 0.8;}/* Hover pour logos dans les cartes (EPP, partis nationaux, etc.) */.host-card img[alt*="logo"],.speaker-card img[alt*="logo"] { transition: transform 0.2s ease, opacity 0.2s ease;}.host-card a:hover img[alt*="logo"],.speaker-card a:hover img[alt*="logo"] { transform: scale(1.05); opacity: 0.85;}/* === BADGES COMMISSIONS & DÉLÉGATIONS === *//* Hover badges commissions (bleu) */.host-card a[href*="/committees/"],.speaker-card a[href*="/committees/"] { transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;}.host-card a[href*="/committees/"]:hover,.speaker-card a[href*="/committees/"]:hover { background: #d1e7fb !important; border-color: #b3d9f5 !important; transform: translateY(-1px); box-shadow: 0 2px 6px rgba(20, 67, 121, 0.15);}/* Hover badges délégations (vert) */.host-card a[href*="/delegations/"],.speaker-card a[href*="/delegations/"] { transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;}.host-card a[href*="/delegations/"]:hover,.speaker-card a[href*="/delegations/"]:hover { background: #dcfce7 !important; border-color: #a7f3d0 !important; transform: translateY(-1px); box-shadow: 0 2px 6px rgba(22, 101, 52, 0.15);}/* Hover badges SUBSTITUTE (couleurs inversées) - plus subtil */.host-card a[href*="/committees/"][style*="background:#144379"]:hover,.speaker-card a[href*="/committees/"][style*="background:#144379"]:hover { background: #1e5a9e !important; transform: translateY(-1px); box-shadow: 0 2px 6px rgba(20, 67, 121, 0.25);}.host-card a[href*="/delegations/"][style*="background:#166534"]:hover,.speaker-card a[href*="/delegations/"][style*="background:#166534"]:hover { background: #15803d !important; transform: translateY(-1px); box-shadow: 0 2px 6px rgba(22, 101, 52, 0.25);}/* === ICÔNES RÉSEAUX SOCIAUX === */.social-icon { display: inline-flex; transition: transform 0.3s ease, box-shadow 0.3s ease;}.social-icon:hover { transform: scale(1.15); box-shadow: 0 0 0 2px rgba(0, 61, 122, 0.15);}/* === LIENS STANDARD === */a { transition: color 0.2s ease, opacity 0.2s ease;}a:hover { opacity: 0.7;}/* Exception : liens dans badges (déjà gérés ci-dessus) */a[href*="/committees/"]:hover,a[href*="/delegations/"]:hover { opacity: 1 !important;}/* === TOOLTIPS DRAPEAUX === */.country-flag { position: relative; display: inline-block; cursor: pointer;}.country-flag .tooltip { visibility: hidden; background-color: #144379; color: #fff; text-align: center; padding: 5px 10px; border-radius: 6px; position: absolute; z-index: 1; top: 100%; left: 0; margin-top: 8px; white-space: nowrap; opacity: 0; transition: opacity 0.3s; font-size: 12px; font-weight: 600;}.country-flag .tooltip::before { content: ""; position: absolute; bottom: 100%; left: 10px; border-width: 5px; border-style: solid; border-color: transparent transparent #144379 transparent;}.country-flag:hover .tooltip { visibility: visible; opacity: 1;}/* === TOOLTIPS MEPs - COMMISSIONS === */.mep-tooltip { position: relative; display: inline-block; margin-left: 4px;}.mep-tooltip .tooltiptext { visibility: hidden; width: 90vw; max-width: 340px; background-color: #144379; color: #fff; text-align: left; border-radius: 8px; padding: 12px 15px; position: fixed; z-index: 999; opacity: 0; transition: opacity 0.3s; font-size: 12px; line-height: 1.6; box-shadow: 0 6px 20px rgba(20,67,121,0.4); left: 5vw; right: 5vw; bottom: auto; top: auto; transform: none;}/* Desktop: positionnement au-dessus de l'icône */@media (min-width: 768px) { .mep-tooltip .tooltiptext { position: absolute; width: 340px; left: auto; right: auto; bottom: 125%; left: 50%; transform: translateX(-50%); } .mep-tooltip .tooltiptext::after { content: ""; position: absolute; top: 100%; left: 50%; margin-left: -5px; border-width: 5px; border-style: solid; border-color: #144379 transparent transparent transparent; }}/* Mobile: centré en haut de l'écran */@media (max-width: 767px) { .mep-tooltip .tooltiptext { top: 20%; left: 5vw; right: 5vw; width: auto; }}/* Affichage au hover (desktop) et focus (mobile) */.mep-tooltip:hover .tooltiptext,.mep-tooltip:focus-within .tooltiptext { visibility: visible; opacity: 1;}/* Style des titres dans le tooltip MEPs */.mep-tooltip .tooltiptext strong { font-weight: 700; color: #ffd699; margin-bottom: 4px; display: inline-block;}/* === OPTIMISATIONS SEO SANS EFFETS COLLATÉRAUX === *//* Performance animations */.speaker-card,.logo-link,.social-icon,.mep-tooltip { will-change: transform;}/* Optimisation conteneur richedit */.richedit_wrap { contain: layout style paint;}/* Accessibilité focus */.logo-link:focus,.social-icon:focus,.country-flag:focus,.mep-tooltip:focus { outline: 2px solid #1a4ba7; outline-offset: 2px;}/* Badges focus (accessibilité clavier) */a[href*="/committees/"]:focus,a[href*="/delegations/"]:focus { outline: 2px solid #144379; outline-offset: 2px;}/* Optimisation performances - désactivation animations pour users qui préfèrent */@media (prefers-reduced-motion: reduce) { .speaker-card, .logo-link, .social-icon, .country-flag .tooltip, .mep-tooltip .tooltiptext, a[href*="/committees/"], a[href*="/delegations/"] { transition-duration: 0.01ms !important; }}/* ======================================== FLIP-CARDS SYSTEM - Conférences ======================================== */.flip-card { perspective: 1000px; background: transparent; min-height: 280px; transition: transform 0.3s ease, box-shadow 0.3s ease;}.flip-card:hover { transform: translateY(-5px); box-shadow: 0 12px 30px rgba(20, 67, 121, 0.18);}.flip-card-inner { position: relative; width: 100%; height: 100%; transition: transform 0.8s; transform-style: preserve-3d;}/* CHECKBOX CACHÉ */.flip-checkbox { display: none !important; position: absolute !important; opacity: 0 !important; pointer-events: none !important; width: 0 !important; height: 0 !important;}/* Rotation quand coché */.flip-checkbox:checked ~ .flip-card-inner { transform: rotateY(180deg);}/* Faces avant et arrière */.flip-card-front,.flip-card-back { position: absolute; top: 0; left: 0; width: 100%; height: 100%; backface-visibility: hidden; border-radius: 12px; padding: 18px; text-align: center; box-sizing: border-box;}.flip-card-front { background: #ffffff; border: 2px solid #e8dfd4; box-shadow: 0 4px 15px rgba(20, 67, 121, 0.10);}/* Style VIP/Special guests */.flip-card-front.vip { background: linear-gradient(135deg, #fff9e6 0%, #fffbf0 100%); border: 3px solid #d4af37; box-shadow: 0 6px 20px rgba(212, 175, 55, 0.25);}.flip-card-back { background: linear-gradient(135deg, #fef3e2 0%, #faf8f5 100%); border: 2px solid #144379; transform: rotateY(180deg); display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; padding: 20px; overflow: hidden;}/* Contenu bio avec scroll */.bio-content { width: 100%; height: 100%; overflow-y: auto; text-align: left; font-size: 13px; line-height: 1.6; color: #374151; padding-right: 8px;}.bio-content::-webkit-scrollbar { width: 6px;}.bio-content::-webkit-scrollbar-track { background: rgba(20, 67, 121, 0.1); border-radius: 3px;}.bio-content::-webkit-scrollbar-thumb { background: #144379; border-radius: 3px;}.bio-content::-webkit-scrollbar-thumb:hover { background: #1e5a9e;}/* Bouton info "i" */.info-button { position: absolute; bottom: 10px; left: 10px; width: 26px; height: 26px; border: 2px solid #144379; border-radius: 50%; display: flex; align-items: center; justify-content: center; color: #144379; font-weight: 700; font-size: 15px; font-style: italic; cursor: pointer; background: rgba(255, 255, 255, 0.95); transition: all 0.3s ease; z-index: 100;}.info-button:hover { background: #144379; color: #ffffff; transform: rotate(180deg) scale(1.15); box-shadow: 0 2px 8px rgba(20, 67, 121, 0.3);}/* Bouton fermer "×" */.close-button { position: absolute; top: 10px; right: 10px; width: 26px; height: 26px; border: 2px solid #144379; border-radius: 50%; display: flex; align-items: center; justify-content: center; color: #144379; font-weight: 700; font-size: 20px; cursor: pointer; background: rgba(255, 255, 255, 0.95); transition: all 0.3s ease; z-index: 100; line-height: 1;}.close-button:hover { background: #144379; color: #ffffff; transform: rotate(90deg) scale(1.15); box-shadow: 0 2px 8px rgba(20, 67, 121, 0.3);}/* Badge VIP */.vip-badge { position: absolute; top: -8px; right: -8px; background: linear-gradient(135deg, #d4af37 0%, #f4d03f 100%); color: #000; padding: 4px 12px; border-radius: 0 12px 0 12px; font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: 1px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15); z-index: 5;}/* Responsive */@media (max-width: 768px) { .flip-card { min-height: 260px; } .bio-content { font-size: 12px; }}/* Performance flip-cards */@media (prefers-reduced-motion: reduce) { .flip-card-inner { transition-duration: 0.01ms !important; }}