/* @license GPL-2.0-or-later https://www.drupal.org/licensing/faq */
.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;}}
.col1{flex:2 !important;}.ph-scale-container{width:100%;max-width:800px;margin:0 auto;}.ph-scale{position:relative;width:100%;height:100px;background:linear-gradient(to right,#ff0000 0%,#ff6600 14%,#ffcc00 28%,#ffff00 42%,#99ff33 50%,#33ccff 58%,#0099ff 72%,#0066ff 86%,#0033cc 100%);border-radius:15px;box-shadow:0 4px 15px rgba(0,0,0,0.3);margin:20px 0;}.ph-graduations{position:absolute;top:-25px;left:0;right:0;display:flex;justify-content:space-between;padding:0 5px;}.ph-graduations span{font-size:0.9rem;font-weight:bold;color:var(--color-text);width:20px;text-align:center;}.ph-slider{position:absolute;top:50%;left:0;width:100%;height:100%;transform:translateY(-50%);-webkit-appearance:none;appearance:none;background:transparent;cursor:pointer;z-index:10;}.ph-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:30px;height:80px;background:rgba(255,255,255,0.9);border:3px solid var(--current-color);border-radius:8px;cursor:grab;box-shadow:0 0 10px rgba(0,0,0,0.5);transition:transform 0.2s ease;}.ph-slider::-webkit-slider-thumb:hover{transform:scale(1.1);box-shadow:0 0 20px var(--current-color);}.ph-slider::-webkit-slider-thumb:active{cursor:grabbing;}.ph-slider::-moz-range-thumb{width:30px;height:80px;background:rgba(255,255,255,0.9);border:3px solid var(--current-color);border-radius:8px;cursor:grab;box-shadow:0 0 10px rgba(0,0,0,0.5);transition:transform 0.2s ease;}.ph-slider::-moz-range-thumb:hover{transform:scale(1.1);}.ph-display{text-align:center;margin:30px 0;}.ph-value-box{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,0.1);padding:15px 30px;border-radius:12px;border:2px solid var(--current-color);margin-bottom:15px;}.ph-label{font-size:1.1rem;color:var(--color-text);}.ph-value{font-size:2rem;font-weight:bold;color:var(--current-color);min-width:60px;}.ph-zone{font-size:1.3rem;font-weight:bold;margin:10px 0;padding:10px;border-radius:8px;transition:all 0.3s ease;}.ph-zone.acide{background:rgba(255,100,100,0.3);color:#ff6666;}.ph-zone.neutre{background:rgba(100,255,100,0.3);color:#66ff66;}.ph-zone.basique{background:rgba(100,150,255,0.3);color:#6699ff;}.ph-example{display:flex;align-items:center;justify-content:center;gap:15px;margin:20px 0;padding:15px;background:rgba(255,255,255,0.05);border-radius:12px;min-height:60px;transition:all 0.3s ease;}.example-icon{font-size:2.5rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,0.3));transition:transform 0.3s ease;}.ph-example:hover .example-icon{transform:scale(1.1);}.example-name{font-size:1.2rem;font-weight:bold;color:var(--current-color);}.ph-description{font-size:0.95rem;color:var(--color-text);font-style:italic;margin-top:10px;min-height:40px;}@media (max-width:768px){.ph-scale{height:80px;}.ph-slider::-webkit-slider-thumb{width:25px;height:60px;}.ph-slider::-moz-range-thumb{width:25px;height:60px;}.ph-value{font-size:1.5rem;}.ph-zone{font-size:1.1rem;}.example-icon{font-size:2rem;}.example-name{font-size:1rem;}}@media (max-width:480px){.ph-graduations span{font-size:0.7rem;}.ph-scale{height:60px;}.ph-slider::-webkit-slider-thumb{width:20px;height:50px;}.ph-slider::-moz-range-thumb{width:20px;height:50px;}.example-icon{font-size:1.5rem;}.example-name{font-size:0.9rem;}}.measurement-methods{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:25px;margin:30px 0;}.method-card{background:rgba(255,255,255,0.05);border-radius:15px;overflow:hidden;border:2px solid rgba(255,255,255,0.1);transition:all 0.3s ease;display:flex;flex-direction:column;position:relative;min-height:450px;max-height:450px;}.method-card:hover{border-color:var(--current-color);box-shadow:0 8px 25px rgba(0,0,0,0.3);}.method-image{width:100%;height:200px;overflow:hidden;background:rgba(255,255,255,0.1);display:flex;align-items:center;justify-content:center;position:relative;transition:all 0.4s ease;flex-shrink:0;}.method-image img{width:100%;height:100%;object-fit:cover;padding:10px;transition:all 0.4s ease;}.method-card:hover .method-image{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10;background:rgba(0,0,0,0.95);}.method-card:hover .method-image img{object-fit:contain;padding:20px;max-height:100%;}.method-content{padding:20px;flex:1;display:flex;flex-direction:column;transition:opacity 0.4s ease;overflow:hidden;}.method-card:hover .method-content{opacity:0;pointer-events:none;}.method-content h4{margin:0 0 12px 0;color:var(--current-color);font-size:1.2rem;}.method-description{flex:1;font-size:0.95rem;line-height:1.5;color:var(--color-text);margin-bottom:15px;}.method-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;}.method-tags span{padding:5px 12px;border-radius:20px;font-size:0.85rem;font-weight:500;display:inline-block;transition:transform 0.2s ease;}.method-tags span:hover{transform:scale(1.05);}.tag-pro{background:rgba(100,255,100,0.2);color:#66ff66;border:1px solid #66ff66;}.tag-con{background:rgba(255,150,100,0.2);color:#ffaa66;border:1px solid #ffaa66;}.tag-neutral{background:rgba(100,150,255,0.2);color:#66aaff;border:1px solid #66aaff;}.method-card::after{position:absolute;bottom:15px;left:50%;transform:translateX(-50%);background:rgba(0,0,0,0.8);color:white;padding:8px 15px;border-radius:20px;font-size:0.85rem;opacity:0;transition:opacity 0.3s ease;pointer-events:none;z-index:11;}.method-card:hover::after{opacity:1;}@media (max-width:768px){.measurement-methods{grid-template-columns:1fr;gap:20px;}.method-card{min-height:400px;max-height:400px;}.method-image{height:180px;}.method-content{padding:15px;}.method-content h4{font-size:1.1rem;}.method-description{font-size:0.9rem;}}@media (max-width:480px){.method-card{min-height:350px;max-height:350px;}.method-image{height:150px;}.method-tags{gap:6px;}.method-tags span{padding:4px 10px;font-size:0.8rem;}.method-card::after{font-size:0.75rem;padding:6px 12px;}}.ions-balance-container{width:100%;max-width:900px;margin:0 auto;}.ions-slider-wrapper{text-align:center;margin:20px 0;}.ions-slider-wrapper label{display:block;font-size:1.1rem;margin-bottom:10px;color:var(--color-text);}.ions-slider{width:100%;max-width:600px;height:12px;-webkit-appearance:none;appearance:none;background:linear-gradient(to right,#9b59b6 0%,#8e44ad 25%,#6c3483 50%,#5b2c6f 75%,#4a235a 100%);border-radius:10px;outline:none;cursor:pointer;box-shadow:0 2px 10px rgba(0,0,0,0.3);}.ions-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:24px;height:24px;background:#fff;border:3px solid #9b59b6;border-radius:50%;cursor:grab;box-shadow:0 0 8px rgba(155,89,182,0.6);transition:all 0.2s ease;}.ions-slider::-webkit-slider-thumb:hover{transform:scale(1.2);box-shadow:0 0 15px rgba(155,89,182,0.8);}.ions-slider::-webkit-slider-thumb:active{cursor:grabbing;}.ions-slider::-moz-range-thumb{width:24px;height:24px;background:#fff;border:3px solid #9b59b6;border-radius:50%;cursor:grab;box-shadow:0 0 8px rgba(155,89,182,0.6);transition:all 0.2s ease;}.ions-slider::-moz-range-thumb:hover{transform:scale(1.2);}.ions-ph-display{margin-top:15px;font-size:1.4rem;font-weight:bold;color:#9b59b6;}.ions-balance{display:flex;align-items:stretch;gap:20px;margin:30px 0;min-height:400px;}.ion-column{flex:1;display:flex;flex-direction:column;background:rgba(255,255,255,0.05);border-radius:15px;padding:20px;position:relative;}.ion-header{text-align:center;padding:15px;border-radius:10px;margin-bottom:20px;}.ion-header.acide{background:rgba(255,100,100,0.3);border:2px solid #ff6666;}.ion-header.basique{background:rgba(100,150,255,0.3);border:2px solid #6699ff;}.ion-symbol{display:block;font-size:2rem;font-weight:bold;margin-bottom:5px;}.ion-label{display:block;font-size:0.9rem;opacity:0.8;}.ion-bar-container{position:relative;flex:1;background:rgba(0,0,0,0.3);border-radius:10px;overflow:hidden;min-height:200px;display:flex;align-items:flex-end;}.ion-bar{width:100%;transition:height 0.5s ease;border-radius:10px 10px 0 0;}.ion-bar.h-plus{background:linear-gradient(to top,#ff4444,#ff8888);box-shadow:0 0 20px rgba(255,68,68,0.5);}.ion-bar.oh-minus{background:linear-gradient(to top,#4488ff,#88bbff);box-shadow:0 0 20px rgba(68,136,255,0.5);}.ion-particles{position:absolute;left:20px;right:20px;bottom:0;top:0;pointer-events:none;overflow:hidden;}.ion-particle{position:absolute;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:bold;animation:floatIon 3s ease-in-out infinite;opacity:0;transition:opacity 0.3s ease;}.ion-particle.visible{opacity:1;}.ion-particle.h-plus{background:#ff6666;color:white;box-shadow:0 0 10px rgba(255,102,102,0.6);}.ion-particle.oh-minus{background:#6699ff;color:white;box-shadow:0 0 10px rgba(102,153,255,0.6);}@keyframes floatIon{0%,100%{transform:translateY(0) translateX(0);}25%{transform:translateY(-8px) translateX(4px);}50%{transform:translateY(-4px) translateX(-4px);}75%{transform:translateY(-12px) translateX(2px);}}.ion-concentration{text-align:center;margin-top:15px;padding:10px;background:rgba(255,255,255,0.1);border-radius:8px;font-weight:bold;transition:all 0.3s ease;}.balance-center{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:250px;}.balance-state{text-align:center;padding:10px 15px;background:rgba(255,255,255,0.1);border-radius:8px;font-weight:bold;font-size:1.1rem;transition:all 0.3s ease;}.balance-state.acide{background:rgba(255,100,100,0.3);color:#ff6666;}.balance-state.neutre{background:rgba(100,255,100,0.3);color:#66ff66;}.balance-state.basique{background:rgba(100,150,255,0.3);color:#6699ff;}.ions-explanation{text-align:center;padding:20px;background:rgba(255,255,255,0.1);border-radius:12px;border:2px solid #9b59b6;font-size:1.05rem;line-height:1.6;margin-top:20px;}@media (max-width:768px){.ions-balance{flex-direction:column;min-height:auto;}.ion-column{min-height:250px;}.balance-center{flex-direction:row;gap:15px;padding:15px 0;}.ion-bar-container{min-height:150px;}}@media (max-width:480px){.ion-symbol{font-size:1.5rem;}.ion-header{padding:10px;}.ions-explanation{font-size:0.95rem;padding:15px;}}
