/* @license GPL-2.0-or-later https://www.drupal.org/licensing/faq */
.interactive-table{border-collapse:collapse;margin:20px 0;width:100%;text-align:center;}.interactive-table th{background:linear-gradient(135deg,var(--current-color),#222);color:white;padding:12px;border:1px solid rgba(255,255,255,0.2);}.interactive-table td{padding:12px;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);}.quiz-buttons{display:flex;justify-content:center;gap:8px;}.quiz-btn{background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.2);padding:6px 14px;border-radius:6px;cursor:pointer;transition:all 0.3s;color:white;}.quiz-btn:hover{background:var(--current-color);color:white;}.quiz-btn.correct{background:#4caf50;color:white;}.quiz-btn.incorrect{background:#e53935;color:white;}.quiz-cell.quiz-correct{background:rgba(76,175,80,0.3);border-color:#4caf50;}.quiz-cell.quiz-incorrect{background:rgba(229,57,53,0.3);border-color:#e53935;}.example.hidden{opacity:0;}tr.validated .example{opacity:1;font-weight:bold;color:var(--current-color);transition:opacity 0.5s ease;}.states-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:20px;}.state-trigger{background:rgba(255,255,255,0.05);border-radius:12px;padding:20px;border:2px solid transparent;cursor:pointer;transition:all 0.4s;position:relative;z-index:10;}.state-trigger:hover{border-color:var(--current-color);transform:translateY(-3px);}.state-trigger.revealed{border-color:#4caf50;}.state-icon{font-size:2.5rem;margin-bottom:8px;text-align:center;}.state-name{font-size:1.1rem;font-weight:bold;color:var(--current-color);text-align:center;}.properties-reveal{max-height:0;opacity:0;overflow:hidden;transition:all 0.5s ease;margin-top:10px;}.state-trigger.revealed .properties-reveal{max-height:300px;opacity:1;padding-top:10px;}.niveau3-layout{display:grid;grid-template-columns:1fr 400px;gap:30px;align-items:start;}.states-explanation{background:rgba(255,255,255,0.05);padding:20px;border-radius:12px;margin-bottom:20px;}.state-item{background:rgba(255,255,255,0.03);border-radius:8px;padding:15px;margin-bottom:15px;border:2px solid transparent;cursor:pointer;transition:all 0.3s ease;}.state-item:hover{border-color:var(--current-color);background:rgba(255,255,255,0.08);}.state-item.active{border-color:var(--current-color);background:rgba(255,255,255,0.1);box-shadow:0 0 15px rgba(var(--current-color),0.3);}.state-item h4{margin:0 0 10px 0;color:var(--current-color);font-size:1.2rem;}.state-item ul{margin:0;padding-left:20px;}.molecule-simulator-container{position:sticky;top:20px;}.molecule-simulator{position:relative;width:100%;height:300px;background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:15px;border:2px solid var(--current-color);overflow:hidden;margin-bottom:15px;}.molecule{position:absolute;width:14px;height:14px;background:radial-gradient(circle,#64b5f6,#1976d2);border-radius:50%;box-shadow:0 0 6px rgba(100,181,246,0.6);transition:background 0.3s ease;}.molecule.solid{background:radial-gradient(circle,#81c784,#388e3c);box-shadow:0 0 4px rgba(129,199,132,0.6);}.molecule.liquid{background:radial-gradient(circle,#64b5f6,#1976d2);box-shadow:0 0 6px rgba(100,181,246,0.6);}.molecule.gas{background:radial-gradient(circle,#ffb74d,#f57c00);box-shadow:0 0 8px rgba(255,183,77,0.6);}.simulator-controls{text-align:center;margin-bottom:10px;}.state-button{background:rgba(30,30,60,0.8);border:1px solid var(--color-accent);color:var(--color-text);padding:8px 16px;margin:5px;border-radius:8px;cursor:pointer;transition:all 0.3s ease;}.state-button:hover{background:rgba(60,60,120,0.9);transform:scale(1.05);}.state-button.active{background:var(--current-color);color:#000;font-weight:bold;box-shadow:0 0 12px var(--current-color);}.liquid-container{position:absolute;bottom:20px;left:50%;transform:translateX(-47%);width:130px;height:100px;border-left:3px solid rgba(160,200,220,0.55);border-right:3px solid rgba(160,200,220,0.55);border-bottom:5px solid rgba(160,200,220,0.65);border-top:none;border-radius:0 0 16px 16px;background:linear-gradient(to bottom,rgba(120,160,200,0.06),rgba(80,120,160,0.08));backdrop-filter:blur(4px) saturate(110%);box-shadow:0 10px 20px rgba(0,0,0,0.25) inset;display:none;transition:left 0.1s ease;}.simulator-label{text-align:center;font-size:0.9em;color:rgba(255,255,255,0.7);}@media (max-width:768px){.niveau3-layout{grid-template-columns:1fr;}.molecule-simulator-container{position:static;}.molecule-simulator{height:250px;}section{padding-left:2rem;}}
.launch-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(ellipse at center,rgba(14,14,26,0.95) 0%,rgba(0,0,0,0.98) 100%);display:flex;justify-content:center;align-items:center;z-index:1000;transition:all 0.5s cubic-bezier(0.4,0,0.2,1);border-radius:1.5rem;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.1);}.launch-overlay.hidden{opacity:0;pointer-events:none;transform:scale(0.95);}.launch-button{font-size:1.2rem;padding:1rem 2rem;border:2px solid var(--current-color,var(--color-accent));background:rgba(255,255,255,0.1);color:var(--color-text);cursor:pointer;border-radius:0.5rem;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);font-weight:bold;font-family:'Arial',sans-serif;backdrop-filter:blur(4px);box-shadow:0 4px 15px rgba(0,0,0,0.3);position:relative;overflow:hidden;}.launch-button::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.2),transparent);transition:left 0.6s ease;}.launch-button:hover{background:rgba(255,255,255,0.2);border-color:var(--color-accent);transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,0.4);}.launch-button:hover::before{left:100%;}.launch-button:active{transform:translateY(0);box-shadow:0 4px 15px rgba(0,0,0,0.3);}.launch-overlay .launch-button{border-color:var(--current-color);color:var(--current-color);}@keyframes pulse{0%,100%{box-shadow:0 4px 15px rgba(0,0,0,0.3);}50%{box-shadow:0 4px 25px var(--current-color,var(--color-accent));}}.launch-button{animation:pulse 2s ease-in-out infinite;}.launch-button:hover{animation:none;}.animation-container:has(.launch-overlay:not(.hidden)) .electron,.animation-container:has(.launch-overlay:not(.hidden)) .nucleus{animation-play-state:paused !important;-webkit-animation-play-state:paused !important;}.animation-container:has(.launch-overlay[style*="display: block"],.launch-overlay[style*="opacity: 1"]) .electron,.animation-container:has(.launch-overlay[style*="display: block"],.launch-overlay[style*="opacity: 1"]) .nucleus{animation-play-state:paused !important;-webkit-animation-play-state:paused !important;}.launch-overlay:not(.hidden) ~ *{pointer-events:none;opacity:0.3;transition:opacity 0.3s ease;}.animation-active *{pointer-events:auto !important;opacity:1 !important;}@media (max-width:768px){.launch-button{font-size:1rem;padding:0.8rem 1.5rem;}}
