.toast-notification{position:fixed;bottom:2rem;right:2rem;display:flex;align-items:center;gap:1rem;padding:.75rem 1.25rem;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:10px;box-shadow:var(--shadow-ui);z-index:10000;min-width:250px;max-width:400px;animation:slideInRight .3s ease-out}@keyframes slideInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}.toast-notification.success{border-left:4px solid var(--color-valide)}.toast-notification.success .toast-icon{color:var(--color-valide)}.toast-notification.error{border-left:4px solid var(--color-danger)}.toast-notification.error .toast-icon{color:var(--color-danger)}.toast-notification.info{border-left:4px solid var(--color-info)}.toast-notification.info .toast-icon{color:var(--color-info)}.toast-message{color:var(--text-main);font-family:var(--font-main);font-size:.9rem;margin:0;flex-grow:1}.toast-close{background:none;border:none;color:color-mix(in srgb,var(--text-main),transparent 60%);cursor:pointer;padding:0;display:flex;transition:var(--transition-smooth)}.toast-close:hover{color:var(--text-main)}@media(max-width:480px){.toast-notification{bottom:1rem;left:1rem;right:1rem;min-width:auto}}:root{--color-primaire: #3f1400;--color-secondaire: #ee7325;--color-tertiaire: #ecb267;--color-quaternaire: #fd9802;--color-cinquieme: #1f1f1f;--color-sixieme: #441b00;--color-septieme: #2c2c2c;--color-huitieme: #ffffff;--color-neuvieme: #6b6b6b;--color-dixieme: #f3b255;--color-onzieme: #fbfbfb;--color-douzieme: #fff6ed;--color-valide: #49cc90;--color-danger: #f93e3e;--color-alerte: #fca130;--color-info: #61affe;--bg-main: var(--color-septieme);--bg-surface: var(--color-cinquieme);--text-main: var(--color-huitieme);--text-muted: var(--color-neuvieme);--text-contrast: var(--color-primaire);--border-subtle: rgba(255, 255, 255, .05);--shadow-ui: 0 8px 32px rgba(0, 0, 0, .2);--sidebar-bg: var(--color-septieme);--topbar-bg: var(--color-septieme);--space-2xs: .25rem;--space-xs: .5rem;--space-s: 1rem;--space-m: 1.5rem;--space-l: 2rem;--space-xl: 3rem;--space-2xl: 4rem;--font-display: "Manrope", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--font-main: var(--font-display);--font-h1: clamp(2.5rem, 8vw, 4.5rem);--font-h2: clamp(2rem, 6vw, 3.5rem);--font-h3: clamp(1.5rem, 4vw, 2.5rem);--font-p: clamp(1rem, 1.2vw, 1.25rem);--font-small: clamp(.875rem, 1vw, 1rem);--z-index-sidebar: 1000;--z-index-navbar: 1100;--z-index-modal: 2000;--z-index-toast: 3000;--transition-smooth: .3s cubic-bezier(.4, 0, .2, 1);--radius-s: 4px;--radius-m: 8px;--radius-l: 16px;--radius-full: 9999px}[data-theme=dark]{--bg-main: var(--color-septieme);--bg-surface: var(--color-cinquieme);--text-main: var(--color-huitieme);--text-muted: var(--color-neuvieme);--text-contrast: var(--color-primaire);--border-subtle: rgba(255, 255, 255, .05);--shadow-ui: 0 8px 32px rgba(0, 0, 0, .2);--sidebar-bg: var(--color-septieme);--topbar-bg: var(--color-septieme)}[data-theme=light]{--bg-main: #f4f6f8;--bg-surface: #ffffff;--text-main: var(--color-primaire);--text-muted: #6c757d;--text-contrast: var(--color-huitieme);--border-subtle: rgba(0, 0, 0, .08);--shadow-ui: 0 4px 12px rgba(0, 0, 0, .05);--sidebar-bg: #ffffff;--topbar-bg: #ffffff}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;width:100%;overflow-x:hidden}*{scrollbar-width:thin;scrollbar-color:var(--color-secondaire) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background-color:var(--color-secondaire);border-radius:20px;border:transparent}::-webkit-scrollbar-thumb:hover{background-color:var(--color-quaternaire)}.auth-social-container{width:100%;margin-top:1.5rem}.auth-social-divider{display:flex;align-items:center;text-align:center;margin-bottom:1.5rem}.auth-social-divider:before,.auth-social-divider:after{content:"";flex:1;border-bottom:1px solid rgba(255,255,255,.1)}.auth-social-divider span{padding:0 1rem;color:var(--color-neuvieme, #6b6b6b);font-size:.8rem;text-transform:uppercase;letter-spacing:.5px}.auth-social-buttons{display:flex;justify-content:center;gap:1.2rem}.auth-social-buttons .social-btn{width:45px;height:45px;border-radius:var(--radius-full);border:1px solid rgba(255,255,255,.1);background-color:#ffffff0d;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.2rem;transition:all .2s ease}.auth-social-buttons .social-btn.google{color:#db4437;border-color:#db44374d}.auth-social-buttons .social-btn.facebook{color:#1877f2;border-color:#1877f24d}.auth-social-buttons .social-btn.apple{color:var(--color-huitieme, #fff);border-color:#fff3}.auth-social-buttons .social-btn:hover{transform:translateY(-3px);background-color:#ffffff1a;box-shadow:0 5px 15px #0006}.auth-social-buttons .social-btn.google:hover{background-color:#db4437;color:#fff;border-color:#db4437}.auth-social-buttons .social-btn.facebook:hover{background-color:#1877f2;color:#fff;border-color:#1877f2}.auth-social-buttons .social-btn.apple:hover{background-color:#fff;color:#000;border-color:#fff}.auth-login-section{display:flex;justify-content:center;align-items:center;padding:1rem;min-height:auto;font-family:var(--font-main);width:100%;box-sizing:border-box}.auth-login-section .login-container{display:flex;flex-direction:column;align-items:center;width:100%;max-width:360px}.auth-login-section .login-brand{display:flex;align-items:center;justify-content:center;margin-bottom:1rem;gap:.6rem}.auth-login-section .login-brand img{height:40px;object-fit:contain}.auth-login-section .login-brand h1{color:var(--text-main);font-size:1.3rem;margin:0;font-weight:700}.auth-login-section .login-card{background-color:var(--bg-surface);padding:1.5rem 1.4rem;border-radius:var(--radius-m, 8px);border:1px solid var(--border-subtle);width:100%;box-sizing:border-box}.auth-login-section .login-card h2{color:var(--text-main);font-size:1.15rem;margin:0 0 1rem;text-align:center;font-weight:700}.auth-login-section .form-group{margin-bottom:.8rem;position:relative}.auth-login-section label{display:block;margin-bottom:.3rem;font-size:.8rem;font-weight:600;color:var(--text-main)}.auth-login-section input{width:100%;padding:.6rem .9rem;border:1px solid var(--border-subtle);border-radius:var(--radius-m, 8px);background-color:var(--bg-main)!important;color:var(--text-main)!important;font-family:var(--font-main);font-size:.88rem;box-sizing:border-box;outline:none}.auth-login-section input::placeholder{color:var(--text-main);opacity:.45}.auth-login-section input:-webkit-autofill,.auth-login-section input:-webkit-autofill:hover,.auth-login-section input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text-main)!important;-webkit-box-shadow:0 0 0px 1000px var(--bg-main) inset!important;transition:background-color 5000s ease-in-out 0s}.auth-login-section input.input-error{box-shadow:0 0 0 1.5px #f44}.auth-login-section .password-input-wrapper{position:relative;display:flex;align-items:center}.auth-login-section .password-input-wrapper input{padding-right:2.6rem}.auth-login-section .password-toggle{position:absolute;right:.7rem;background:none;border:none;color:var(--color-secondaire, #ee7325);cursor:pointer;display:flex;align-items:center;padding:0;line-height:1}.auth-login-section .password-toggle:hover{color:var(--color-huitieme, #fff)}.auth-login-section .forgot-link{display:block;width:100%;text-align:right;margin-top:.4rem;background:none;border:none;color:var(--color-secondaire, #ee7325);font-family:var(--font-main);font-size:.75rem;font-weight:600;cursor:pointer;padding:0}.auth-login-section .forgot-link:hover{text-decoration:underline}.auth-login-section .btn-primary{width:100%;padding:.7rem;border:none;border-radius:var(--radius-m, 8px);background-color:var(--color-secondaire, #ee7325);color:var(--color-huitieme, #fff);font-family:var(--font-main);font-size:.95rem;font-weight:700;cursor:pointer;transition:filter .2s ease,transform .1s ease;margin-top:.8rem;display:flex;align-items:center;justify-content:center;gap:.5rem}.auth-login-section .btn-primary:hover:not(:disabled){filter:brightness(1.1)}.auth-login-section .btn-primary:active:not(:disabled){transform:scale(.98)}.auth-login-section .btn-primary:disabled{opacity:.6;cursor:not-allowed}.auth-login-section .auth-toggle{margin-top:1rem;color:var(--color-huitieme, #fff);font-size:.85rem;text-align:center}.auth-login-section .auth-toggle button{background:none;border:none;color:var(--color-secondaire, #ee7325);font-family:var(--font-main);font-size:.85rem;font-weight:700;cursor:pointer;padding:0}.auth-login-section .auth-toggle button:hover{text-decoration:underline}.auth-login-section .animate-spin{animation:spin .8s linear infinite}.custom-select-container.is-open{z-index:100}.select-trigger{width:100%;padding:.6rem .9rem;background-color:var(--bg-main);border:1px solid var(--border-subtle);border-radius:var(--radius-m, 8px);color:var(--text-main);font-size:.88rem;display:flex;align-items:center;justify-content:space-between;cursor:pointer;transition:box-shadow .2s;-webkit-user-select:none;user-select:none;box-sizing:border-box}.select-trigger .placeholder{color:#fff6}.select-trigger .chevron-icon{color:var(--color-secondaire, #ee7325);transition:transform .3s ease}.custom-select-container.is-open .chevron-icon{transform:rotate(180deg)}.custom-select-container.has-error .select-trigger{box-shadow:0 0 0 1.5px #f44}.select-dropdown{position:absolute;top:calc(100% + 5px);left:0;width:100%;background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-m, 8px);z-index:1000;box-shadow:var(--shadow-ui);overflow:hidden;animation:fadeInDown .2s ease-out}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.options-scroll-area{max-height:200px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.select-option{padding:.7rem 1rem;color:var(--text-main);font-size:.88rem;cursor:pointer;transition:background-color .2s,color .2s}.select-option:hover{background-color:#ee73251a;color:var(--color-secondaire, #ee7325)}.select-option.selected{background-color:var(--color-secondaire, #ee7325);color:#fff;font-weight:700}.options-scroll-area::-webkit-scrollbar{width:6px}.options-scroll-area::-webkit-scrollbar-thumb{background-color:var(--color-secondaire);border-radius:10px}.auth-register-section{display:flex;justify-content:center;align-items:center;padding:1rem;min-height:auto;font-family:var(--font-main);width:100%;box-sizing:border-box}.auth-register-section .register-container{display:flex;flex-direction:column;align-items:center;width:100%;max-width:360px}.auth-register-section .register-brand{display:flex;align-items:center;justify-content:center;margin-bottom:1rem;gap:.6rem}.auth-register-section .register-brand img{height:40px;object-fit:contain}.auth-register-section .register-brand h1{color:var(--text-main);font-size:1.3rem;margin:0;font-weight:700}.auth-register-section .register-card{background-color:var(--bg-surface);padding:1.5rem 1.4rem;border-radius:var(--radius-m, 8px);border:1px solid var(--border-subtle);width:100%;box-sizing:border-box}.auth-register-section .register-card h2{color:var(--text-main);font-size:1.15rem;margin:0 0 1rem;text-align:center;font-weight:700}.auth-register-section .form-group{margin-bottom:.8rem;position:relative}.auth-register-section label{display:block;margin-bottom:.3rem;font-size:.8rem;font-weight:600;color:var(--text-main)}.auth-register-section input,.auth-register-section select{width:100%;padding:.6rem .9rem;border:1px solid var(--border-subtle);border-radius:var(--radius-m, 8px);background-color:var(--bg-main)!important;color:var(--text-main)!important;font-family:var(--font-main);font-size:.88rem;box-sizing:border-box;outline:none}.auth-register-section input::placeholder{color:var(--text-main);opacity:.45}.auth-register-section select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23ee7325' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .7rem center;background-size:1rem;padding-right:2.2rem}.auth-register-section .birth-date-row{display:flex;gap:.5rem}.auth-register-section .birth-date-row .birth-day-select{flex:0 0 85px}.auth-register-section .birth-date-row .birth-month-select{flex:1}.auth-register-section .birth-date-row .birth-year-select{flex:0 0 100px}.auth-register-section select.input-error{box-shadow:0 0 0 1.5px #f44}.auth-register-section input:-webkit-autofill,.auth-register-section input:-webkit-autofill:hover,.auth-register-section input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text-main)!important;-webkit-box-shadow:0 0 0px 1000px var(--bg-main) inset!important;transition:background-color 5000s ease-in-out 0s}.auth-register-section input.input-error{box-shadow:0 0 0 1.5px #f44}.auth-register-section .password-input-wrapper{position:relative;display:flex;align-items:center}.auth-register-section .password-input-wrapper input{padding-right:2.6rem}.auth-register-section .password-toggle{position:absolute;right:.7rem;background:none;border:none;color:var(--color-secondaire, #ee7325);cursor:pointer;display:flex;align-items:center;padding:0;line-height:1}.auth-register-section .password-toggle:hover{color:var(--color-huitieme, #fff)}.auth-register-section .password-strength{display:flex;align-items:center;gap:.6rem;margin-top:.5rem}.auth-register-section .strength-bars{display:flex;gap:4px;flex:1}.auth-register-section .strength-bars .bar{height:4px;flex:1;border-radius:2px;background-color:#ffffff26;transition:background-color .3s ease}.auth-register-section .strength-bars .bar.faible{background-color:#e74c3c}.auth-register-section .strength-bars .bar.moyen{background-color:#f39c12}.auth-register-section .strength-bars .bar.fort{background-color:#2ecc71}.auth-register-section .strength-label{font-size:.75rem;font-weight:700;min-width:40px;text-align:right}.auth-register-section .strength-label.faible{color:#e74c3c}.auth-register-section .strength-label.moyen{color:#f39c12}.auth-register-section .strength-label.fort{color:#2ecc71}.auth-register-section .btn-submit{width:100%;padding:.7rem;border:none;border-radius:var(--radius-m, 8px);background-color:var(--color-secondaire, #ee7325);color:var(--color-huitieme, #fff);font-family:var(--font-main);font-size:.95rem;font-weight:700;cursor:pointer;transition:filter .2s ease,transform .1s ease;margin-top:.8rem;display:flex;align-items:center;justify-content:center;gap:.5rem}.auth-register-section .btn-submit:hover:not(:disabled){filter:brightness(1.1)}.auth-register-section .btn-submit:active:not(:disabled){transform:scale(.98)}.auth-register-section .btn-submit:disabled{opacity:.6;cursor:not-allowed}.auth-register-section .auth-footer{margin-top:1rem;color:var(--color-huitieme, #fff);font-size:.85rem;text-align:center}.auth-register-section .auth-footer button{background:none;border:none;color:var(--color-secondaire, #ee7325);font-family:var(--font-main);font-size:.85rem;font-weight:700;cursor:pointer;padding:0}.auth-register-section .auth-footer button:hover{text-decoration:underline}.auth-register-section .animate-spin{animation:spin .8s linear infinite}.auth-forgot-section{display:flex;justify-content:center;align-items:center;padding:1rem;min-height:auto;font-family:var(--font-main);width:100%;box-sizing:border-box}.auth-forgot-section .forgot-container{display:flex;flex-direction:column;align-items:center;width:100%;max-width:360px}.auth-forgot-section .forgot-brand{display:flex;align-items:center;justify-content:center;margin-bottom:1rem;gap:.6rem}.auth-forgot-section .forgot-brand img{height:40px;object-fit:contain}.auth-forgot-section .forgot-brand h1{color:var(--text-main);font-size:1.3rem;margin:0;font-weight:700}.auth-forgot-section .forgot-card{background-color:var(--bg-surface);padding:1.5rem 1.4rem;border-radius:var(--radius-m, 8px);border:1px solid var(--border-subtle);width:100%;box-sizing:border-box}.auth-forgot-section .forgot-card h2{color:var(--text-main);font-size:1.15rem;margin-bottom:.8rem;text-align:center;font-weight:700}.auth-forgot-section .step-desc{color:var(--text-main);font-size:.85rem;text-align:center;margin-bottom:1.2rem;opacity:.7;line-height:1.4}.auth-forgot-section .form-group{margin-bottom:.8rem;position:relative}.auth-forgot-section label{display:block;margin-bottom:.3rem;font-size:.8rem;font-weight:600;color:var(--text-main)}.auth-forgot-section input{width:100%;padding:.6rem .9rem;border:1px solid var(--border-subtle);border-radius:var(--radius-m, 8px);background-color:var(--bg-main)!important;color:var(--text-main)!important;font-family:var(--font-main);font-size:.88rem;box-sizing:border-box;outline:none}.auth-forgot-section .timer-desc{font-size:.8rem;color:var(--text-main);text-align:center;margin-bottom:1rem;opacity:.8}.auth-forgot-section .timer-desc.error{color:#ff4d4d;opacity:1}.auth-forgot-section .timer-desc button{background:none;border:none;color:var(--color-secondaire);font-weight:700;cursor:pointer;text-decoration:underline;padding:0}.auth-forgot-section .btn-primary{display:flex;justify-content:center;align-items:center;gap:.5rem}.auth-forgot-section .btn-primary:disabled{opacity:.7;cursor:not-allowed}.auth-forgot-section .input-error{border-color:#ff4d4d!important}.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.auth-forgot-section input::placeholder{color:var(--text-main);opacity:.45}.auth-forgot-section input:-webkit-autofill,.auth-forgot-section input:-webkit-autofill:hover,.auth-forgot-section input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text-main)!important;-webkit-box-shadow:0 0 0px 1000px var(--bg-main) inset!important;transition:background-color 5000s ease-in-out 0s}.auth-forgot-section .password-input-wrapper{position:relative;display:flex;align-items:center}.auth-forgot-section .password-toggle{position:absolute;right:.7rem;background:none;border:none;color:var(--color-secondaire, #ee7325);cursor:pointer;display:flex;align-items:center;padding:0;line-height:1}.auth-forgot-section .input-error{box-shadow:0 0 0 1.5px var(--error-color, #ff4444)}.auth-forgot-section .timer{display:block;margin-top:.4rem;font-size:.75rem;color:var(--color-secondaire);text-align:right}.auth-forgot-section .resend-link{background:none;border:none;color:var(--color-secondaire);font-family:var(--font-main);font-size:.75rem;cursor:pointer;text-decoration:underline;margin-top:.4rem;float:right}.auth-forgot-section .btn-primary{width:100%;padding:.7rem;border:none;border-radius:var(--radius-m, 8px);background-color:var(--color-secondaire, #ee7325);color:var(--color-huitieme, #fff);font-family:var(--font-main);font-size:.95rem;font-weight:700;cursor:pointer;transition:filter .2s ease,transform .1s ease;margin-top:.8rem}.auth-forgot-section .btn-primary:hover:not(:disabled){filter:brightness(1.1)}.auth-forgot-section .auth-toggle{margin-top:1rem;color:var(--color-huitieme, #fff);font-size:.85rem;text-align:center}.auth-forgot-section .auth-toggle button{background:none;border:none;color:var(--color-secondaire, #ee7325);font-family:var(--font-main);font-size:.85rem;font-weight:700;cursor:pointer;padding:0}.auth-forgot-section .auth-toggle button:hover{text-decoration:underline}.auth-forgot-section .btn-primary:hover{filter:brightness(1.1)}.auth-forgot-section .auth-toggle{margin-top:2.2rem}.auth-forgot-section .auth-toggle button{background:none;border:none;color:var(--color-secondaire);font-weight:700;cursor:pointer;font-size:.95rem;text-decoration:underline}.social-share{display:flex;align-items:center;gap:var(--space-xs);flex-wrap:wrap}.social-share--inline{flex-direction:row;justify-content:center}.social-share--compact{flex-direction:column;gap:6px}.social-share--compact .social-share__buttons{gap:6px}.social-share__label{display:flex;align-items:center;gap:4px;font-size:.8rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.social-share__buttons{display:flex;align-items:center;gap:var(--space-xs)}.social-share__btn{width:36px;height:36px;min-width:36px;border-radius:var(--radius-m);border:1.5px solid var(--border-subtle);background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-smooth);padding:0;line-height:0}.social-share__btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.social-share__btn:active{transform:translateY(0)}.social-share__btn--native:hover{background:var(--color-secondaire);border-color:var(--color-secondaire);color:var(--color-huitieme)}.social-share__btn--twitter:hover{background:#1da1f2;border-color:#1da1f2;color:var(--color-huitieme)}.social-share__btn--facebook:hover{background:#1877f2;border-color:#1877f2;color:var(--color-huitieme)}.social-share__btn--whatsapp:hover{background:#25d366;border-color:#25d366;color:var(--color-huitieme)}.social-share__btn--copy:hover{background:var(--color-info);border-color:var(--color-info);color:var(--color-huitieme)}.social-share__btn--copied{background:var(--color-valide)!important;border-color:var(--color-valide)!important;color:var(--color-huitieme)!important;animation:share-copy-pulse .3s ease}@keyframes share-copy-pulse{0%{transform:scale(1)}50%{transform:scale(1.15)}to{transform:scale(1)}}@media(max-width:480px){.social-share__btn{width:34px;height:34px;min-width:34px}.social-share__label{font-size:.7rem}}.levelup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-index-modal);display:flex;align-items:center;justify-content:center;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:levelup-overlay-in .4s ease-out both;cursor:pointer}.levelup-overlay--exit{animation:levelup-overlay-out .4s ease-in both}@keyframes levelup-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes levelup-overlay-out{0%{opacity:1}to{opacity:0}}.levelup-particles{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.levelup-particle{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--color-secondaire);opacity:0;top:50%;left:50%;animation:levelup-particle-burst 1.8s ease-out both;animation-delay:calc(var(--i) * .08s)}@keyframes levelup-particle-burst{0%{opacity:1;transform:translate(-50%,-50%) scale(0)}40%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(1.5)}}.levelup-particle:nth-child(1){--dx: 200px;--dy: 0}.levelup-particle:nth-child(2){--dx: 170px;--dy: 100px}.levelup-particle:nth-child(3){--dx: 100px;--dy: 170px}.levelup-particle:nth-child(4){--dx: 0;--dy: 200px}.levelup-particle:nth-child(5){--dx: -100px;--dy: 170px}.levelup-particle:nth-child(6){--dx: -170px;--dy: 100px}.levelup-particle:nth-child(7){--dx: -200px;--dy: 0}.levelup-particle:nth-child(8){--dx: -170px;--dy: -100px}.levelup-particle:nth-child(9){--dx: -100px;--dy: -170px}.levelup-particle:nth-child(10){--dx: 0;--dy: -200px}.levelup-particle:nth-child(11){--dx: 100px;--dy: -170px}.levelup-particle:nth-child(12){--dx: 170px;--dy: -100px}.levelup-card{position:relative;background:var(--bg-surface);border:2px solid var(--color-secondaire);border-radius:var(--radius-l);box-shadow:0 0 60px #ee73254d,var(--shadow-ui);padding:var(--space-xl) var(--space-xl) var(--space-l);text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--space-s);min-width:320px;max-width:420px;width:90vw;cursor:default;animation:levelup-card-in .5s cubic-bezier(.175,.885,.32,1.275) .15s both}.levelup-overlay--exit .levelup-card{animation:levelup-card-out .3s ease-in both}@keyframes levelup-card-in{0%{opacity:0;transform:scale(.6) translateY(30px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes levelup-card-out{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.85) translateY(20px)}}.levelup-close{position:absolute;top:var(--space-s);right:var(--space-s);background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:var(--radius-s);transition:color var(--transition-smooth);line-height:0}.levelup-close:hover{color:var(--text-main)}.levelup-icon-ring{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--color-secondaire),var(--color-quaternaire));display:flex;align-items:center;justify-content:center;color:var(--color-huitieme);box-shadow:0 0 30px #ee732566;animation:levelup-ring-pulse 1.5s ease-in-out infinite alternate}.levelup-badge-ring{width:90px;height:90px;border-radius:50%;background:linear-gradient(135deg,var(--color-tertiaire),var(--color-quaternaire));display:flex;align-items:center;justify-content:center;color:var(--color-huitieme);box-shadow:0 0 30px #ecb26766;animation:levelup-ring-pulse 1.5s ease-in-out infinite alternate}@keyframes levelup-ring-pulse{0%{box-shadow:0 0 20px #ee73254d;transform:scale(1)}to{box-shadow:0 0 40px #ee732599;transform:scale(1.05)}}.levelup-sparkle-label{display:flex;align-items:center;gap:6px;color:var(--color-secondaire);font-weight:800;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;margin-top:var(--space-xs)}.levelup-sparkle-label svg{animation:levelup-sparkle-spin 2s linear infinite}@keyframes levelup-sparkle-spin{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.2)}to{transform:rotate(360deg) scale(1)}}.levelup-level{font-size:2.4rem;font-weight:900;color:var(--text-main);margin:0;line-height:1.1}.levelup-xp-text{font-size:.95rem;color:var(--text-muted);margin:0}.levelup-xp-bar-wrapper{width:100%;display:flex;flex-direction:column;gap:4px}.levelup-xp-bar{width:100%;height:10px;background:var(--border-subtle);border-radius:var(--radius-full);overflow:hidden}.levelup-xp-bar-fill{height:100%;background:linear-gradient(90deg,var(--color-secondaire),var(--color-quaternaire));border-radius:var(--radius-full);transition:width 1s cubic-bezier(.4,0,.2,1);animation:levelup-bar-grow 1s ease-out .5s both}@keyframes levelup-bar-grow{0%{width:0}}.levelup-xp-bar-label{font-size:.75rem;color:var(--text-muted);text-align:right}.levelup-badge-title{font-size:1.6rem;font-weight:900;color:var(--text-main);margin:0;line-height:1.2}.levelup-badge-desc{font-size:.9rem;color:var(--text-muted);margin:0;max-width:280px}.levelup-badge-xp{display:inline-block;background:color-mix(in srgb,var(--color-secondaire) 15%,transparent);color:var(--color-secondaire);font-weight:800;font-size:.9rem;padding:4px 14px;border-radius:var(--radius-full)}.levelup-cta{margin-top:var(--space-xs);background:var(--color-secondaire);color:var(--color-huitieme);border:none;padding:.6rem 2rem;border-radius:var(--radius-m);font-weight:700;font-size:.95rem;cursor:pointer;transition:background var(--transition-smooth),transform .15s ease}.levelup-cta:hover{background:var(--color-quaternaire);transform:translateY(-1px)}.levelup-cta:active{transform:translateY(0)}@media(max-width:480px){.levelup-card{min-width:unset;padding:var(--space-l) var(--space-m) var(--space-m);gap:var(--space-xs)}.levelup-icon-ring{width:64px;height:64px}.levelup-icon-ring svg{width:28px;height:28px}.levelup-badge-ring{width:72px;height:72px}.levelup-level{font-size:1.8rem}.levelup-badge-title{font-size:1.3rem}}.shared-auth-page{min-height:100vh;width:100%;display:flex;align-items:center;justify-content:center;background-color:var(--color-septieme, #181818);overflow-y:auto;padding:2rem 1rem;box-sizing:border-box}.auth-page-inner{width:100%;max-width:500px;display:flex;flex-direction:column;align-items:center}@media(max-width:480px){.shared-auth-page{padding:1.5rem 1rem;align-items:flex-start}.auth-page-inner{max-width:100%}}.cultural-snippet-card{background:linear-gradient(135deg,color-mix(in srgb,var(--color-secondaire) 8%,var(--bg-surface)),var(--bg-surface));border:1px solid color-mix(in srgb,var(--color-secondaire) 25%,transparent);border-radius:var(--radius-m);padding:var(--space-m);margin-top:var(--space-s)}.snippet-card-header{display:flex;align-items:center;gap:var(--space-xs);margin-bottom:var(--space-xs)}.snippet-icon{color:#fbc02d;flex-shrink:0}.snippet-label{font-weight:800;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-secondaire)}.snippet-category{margin-left:auto;font-size:.7rem;font-weight:700;padding:.15rem .5rem;border-radius:var(--radius-full);background:color-mix(in srgb,var(--color-secondaire) 12%,transparent);color:var(--color-secondaire)}.snippet-card-title{font-size:.95rem;font-weight:700;color:var(--text-main);margin:0 0 var(--space-xs) 0;line-height:1.3}.snippet-card-content{font-size:.85rem;color:var(--text-muted);line-height:1.6;margin:0}.qp-header{background:linear-gradient(135deg,var(--color-secondaire) 0%,var(--color-quaternaire) 100%);color:var(--color-huitieme);padding:var(--space-s) var(--space-l) var(--space-m);display:flex;flex-direction:column;gap:var(--space-s);padding:4.5rem 2rem 4rem}@media(max-width:768px){.qp-header{padding-top:5.5rem;gap:.5rem}}.qp-header .qp-header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:-5px}.qp-header .btn-back{background:transparent;border:none;color:var(--color-huitieme);display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:600;opacity:.9;transition:opacity .2s}.qp-header .btn-back:hover{opacity:1}.qp-header .header-spacer{width:80px}.qp-header .qp-header-content{text-align:center}.qp-header .qp-header-content h1{font-size:1.4rem;margin:0 0 .4rem;font-weight:800}@media(max-width:768px){.qp-header .qp-header-content h1{font-size:1.2rem;margin-bottom:.2rem}.qp-header .qp-quiz-meta{flex-direction:row;gap:8px}.qp-header .qp-quiz-title{font-size:.85rem}}.qp-header .qp-quiz-meta{display:flex;justify-content:center;align-items:center;gap:var(--space-s)}.qp-header .qp-quiz-title{font-size:1.1rem;font-weight:600}.qp-header .qp-category-pill{background:color-mix(in srgb,var(--color-huitieme) 25%,transparent);padding:4px 12px;border-radius:var(--radius-full);font-size:.85rem;font-weight:700}.qp-header .qp-progress-container{max-width:1200px;margin:.5rem auto 0;width:100%}.qp-header .qp-progress-labels{display:flex;justify-content:space-between;font-size:.8rem;font-weight:700;margin-bottom:5px;opacity:.9}@media(max-width:768px){.qp-header .qp-progress-labels{font-size:.75rem;margin-bottom:4px}}.qp-header .qp-progress-bar{width:100%;height:8px;background:color-mix(in srgb,var(--color-huitieme) 30%,transparent);border-radius:var(--radius-full);overflow:hidden}.qp-header .qp-progress-fill{height:100%;background:var(--color-huitieme);transition:width .4s cubic-bezier(.4,0,.2,1)}.qp-question-card{background:var(--bg-surface);border-radius:var(--radius-l);box-shadow:var(--shadow-ui);overflow:hidden}.qp-question-card .qp-card-inner{padding:var(--space-m) var(--space-l)}@media(max-width:768px){.qp-question-card .qp-card-inner{padding:var(--space-s) var(--space-m)}}.qp-question-card .qp-question-header{display:flex;align-items:flex-start;gap:var(--space-s);margin-bottom:var(--space-m)}.qp-question-card .question-number{width:40px;height:40px;background:var(--color-secondaire);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;flex-shrink:0}.qp-question-card .question-text{font-size:1.15rem;color:var(--text-main);margin:0;line-height:1.4;font-weight:700}@media(max-width:768px){.qp-question-card .question-text{font-size:1.15rem}.qp-question-card .qp-question-header{gap:var(--space-s);margin-bottom:var(--space-m)}.qp-question-card .question-number{width:32px;height:32px;font-size:.9rem}}.qp-question-card .qp-answers-list{display:flex;flex-direction:column;gap:8px;margin-bottom:var(--space-m)}.qp-question-card .qp-answer-item{display:flex;align-items:center;gap:var(--space-s);padding:.75rem 1.1rem;border:1.5px solid var(--border-subtle);border-radius:var(--radius-m);cursor:pointer;transition:all .2s ease}@media(max-width:768px){.qp-question-card .qp-answer-item{padding:.8rem 1rem;gap:var(--space-s)}.qp-question-card .answer-text{font-size:.95rem}}.qp-question-card .qp-answer-item:hover{border-color:var(--color-secondaire);background:color-mix(in srgb,var(--color-secondaire) 5%,transparent)}.qp-question-card .qp-answer-item.selected{border-color:var(--color-secondaire);background:color-mix(in srgb,var(--color-secondaire) 8%,transparent);box-shadow:0 4px 12px #ee73251a}.qp-question-card .radio-circle{width:20px;height:20px;border:2px solid var(--border-subtle);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.qp-question-card .qp-answer-item.selected .radio-circle{border-color:var(--color-secondaire)}.qp-question-card .qp-answer-item.correct{border-color:var(--color-valide);background:color-mix(in srgb,var(--color-valide) 10%,transparent)}.qp-question-card .qp-answer-item.correct .radio-circle{border-color:var(--color-valide);color:var(--color-valide)}.qp-question-card .qp-answer-item.incorrect{border-color:var(--color-danger);background:color-mix(in srgb,var(--color-danger) 10%,transparent)}.qp-question-card .qp-answer-item.incorrect .radio-circle{border-color:var(--color-danger);color:var(--color-danger)}.qp-question-card .qp-answer-item.dimmed{opacity:.6}.qp-question-card .qp-answer-item.disabled{cursor:default}.qp-question-card .radio-inner{width:10px;height:10px;background:var(--color-secondaire);border-radius:50%}.qp-question-card .answer-text{font-size:.95rem;color:var(--text-main);font-weight:500}.qp-explanation-box{background:var(--bg-main);border-left:4px solid var(--color-secondaire);padding:var(--space-s) var(--space-m);border-radius:var(--radius-m);margin-bottom:var(--space-m);animation:fadeInSlide .4s ease}.qp-explanation-box .explanation-header{display:flex;align-items:center;gap:8px;color:var(--color-secondaire);font-weight:800;font-size:.85rem;text-transform:uppercase;margin-bottom:4px}.qp-explanation-box .explanation-text{margin:0;font-size:.95rem;line-height:1.5;color:var(--text-main)}@keyframes fadeInSlide{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.qp-question-card .qp-card-footer{display:flex;justify-content:flex-end}.qp-question-card .btn-next{background:var(--color-primaire);color:#fff;border:none;padding:.7rem 1.5rem;border-radius:var(--radius-m);font-weight:700;font-size:.95rem;display:flex;align-items:center;gap:8px;cursor:pointer;transition:transform .2s,filter .2s}@media(max-width:768px){.qp-question-card .btn-next{width:100%;justify-content:center;padding:.8rem;font-size:1rem}}.qp-question-card .btn-next:hover:not(:disabled){filter:brightness(1.2);transform:translate(4px)}.qp-question-card .btn-next:disabled{opacity:.5;cursor:not-allowed}.qp-question-card .qp-question-image{width:100%;max-width:500px;margin:0 auto 20px;border-radius:var(--radius-md);overflow:hidden}.qp-question-card .qp-question-image img{display:block;width:100%;height:auto;max-height:300px;object-fit:cover;border-radius:var(--radius-md)}.qp-review-list{width:100%;margin-top:var(--space-l);text-align:left;animation:fadeIn .5s ease}.review-title{font-size:1.25rem;color:var(--text-main);margin-bottom:var(--space-m);padding-bottom:var(--space-xs);border-bottom:2px solid var(--border-subtle);font-weight:800}.review-items{display:flex;flex-direction:column;gap:var(--space-m)}.review-item{background:var(--bg-main);border-radius:var(--radius-m);padding:var(--space-m);border:1px solid var(--border-subtle);transition:var(--transition-smooth)}.review-item.is-correct{border-left:4px solid var(--color-valide)}.review-item.is-incorrect{border-left:4px solid var(--color-danger)}.review-item-header{display:flex;gap:var(--space-s);margin-bottom:var(--space-s)}.item-number{width:24px;height:24px;background:var(--bg-surface);color:var(--text-muted);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:800;flex-shrink:0}.item-question{margin:0;font-weight:700;color:var(--text-main);line-height:1.4}.review-item-answers{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-s);margin-bottom:var(--space-s)}@media(max-width:600px){.review-item-answers{grid-template-columns:1fr}}.review-ans-box{padding:var(--space-xs) var(--space-s);border-radius:var(--radius-s);font-size:.85rem}.ans-label{font-size:.7rem;text-transform:uppercase;font-weight:800;margin-bottom:4px;opacity:.7}.ans-content{display:flex;align-items:center;gap:8px;font-weight:600}.user-choice.correct{background:color-mix(in srgb,var(--color-valide) 10%,transparent);color:var(--color-valide)}.user-choice.wrong{background:color-mix(in srgb,var(--color-danger) 10%,transparent);color:var(--color-danger)}.correct-choice{background:color-mix(in srgb,var(--color-valide) 5%,transparent);color:var(--text-main);border:1px dashed var(--color-valide)}.review-explanation{margin-top:var(--space-s);padding:var(--space-s);background:var(--bg-surface);border-radius:var(--radius-s)}.expl-header{display:flex;align-items:center;gap:6px;color:var(--color-secondaire);font-weight:800;font-size:.75rem;text-transform:uppercase;margin-bottom:4px}.review-explanation p{margin:0;font-size:.85rem;line-height:1.5;color:var(--text-muted)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.qp-result-card{background:var(--bg-surface);border-radius:var(--radius-l);box-shadow:var(--shadow-ui);overflow:hidden;padding:var(--space-l) var(--space-xl);text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--space-m)}@media(max-width:768px){.qp-result-card{padding:var(--space-m);gap:var(--space-s)}}.qp-result-card .icon-success{color:var(--color-valide)}.qp-result-card .icon-fail{color:var(--color-danger)}.qp-result-card .qp-result-header h2{font-size:1.5rem;color:var(--text-main);margin:4px 0}.qp-result-card .qp-result-score-intro{margin-top:var(--space-s);font-size:.85rem;color:var(--text-muted)}.qp-result-card .qp-score-display{display:flex;flex-direction:column;gap:8px}.qp-result-card .score-value{font-size:2.8rem;font-weight:900;color:var(--color-secondaire)}@media(max-width:768px){.qp-result-card .score-value{font-size:2.2rem}}.qp-result-card .score-details{font-size:1.1rem;color:var(--text-muted)}.qp-result-card .qp-reward-box{background:color-mix(in srgb,var(--color-secondaire) 8%,transparent);padding:.8rem 2rem;border-radius:var(--radius-l);border:2px dashed var(--color-secondaire)}.qp-result-card .reward-item{display:flex;flex-direction:column;gap:4px}.qp-result-card .reward-label{font-weight:700;color:var(--text-main)}.qp-result-card .reward-value{font-size:1.2rem;font-weight:900;color:var(--color-secondaire)}.qp-result-card .reward-bonus{flex-direction:row;align-items:center;gap:.6rem;margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--border-subtle)}.qp-result-card .reward-bonus .bonus-text{display:flex;flex-direction:column;gap:2px}.qp-result-card .reward-bonus .bonus-icon{flex-shrink:0}.qp-result-card .reward-bonus .bonus-icon.daily{color:var(--color-secondaire)}.qp-result-card .reward-bonus .bonus-icon.streak{color:var(--color-danger, #e74c3c)}.qp-result-card .reward-bonus .reward-label{font-size:.8rem}.qp-result-card .reward-bonus .reward-value{font-size:1rem}.qp-result-card .qp-result-actions{display:flex;gap:var(--space-s);margin-top:var(--space-s)}@media(max-width:768px){.qp-result-card .qp-result-actions{flex-direction:column;width:100%;gap:var(--space-s)}.qp-result-card .btn-primary,.qp-result-card .btn-secondary{width:100%;justify-content:center}}.qp-result-card .btn-primary{background:var(--color-secondaire);color:#fff;border:none;padding:.6rem 1.5rem;border-radius:var(--radius-m);font-weight:700;font-size:.9rem;cursor:pointer}.qp-result-card .btn-secondary{background:transparent;border:1.5px solid var(--border-subtle);color:var(--text-main);padding:.6rem 1.5rem;border-radius:var(--radius-m);display:flex;align-items:center;gap:6px;cursor:pointer;font-weight:600;font-size:.9rem}.badge-earned-animation{display:flex;align-items:center;gap:var(--space-m);background:#fff8e1!important;border:1.5px solid #fbc02d!important;padding:var(--space-s) var(--space-m)!important;border-radius:var(--radius-m)!important;margin-top:var(--space-s);animation:badge-pop .6s cubic-bezier(.175,.885,.32,1.275) both}.badge-earned-icon{width:48px;height:48px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fbc02d;box-shadow:0 4px 10px #0000001a;flex-shrink:0}.badge-earned-text{display:flex;flex-direction:column;text-align:left}.badge-earned-text .reward-label{color:#f57f17!important;font-weight:800!important;font-size:.7rem!important;text-transform:uppercase}.badge-earned-text .reward-value{color:var(--text-main)!important;font-size:1rem!important;font-weight:900!important}@keyframes badge-pop{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.quiz-player-page{min-height:100vh;background-color:var(--bg-main);display:flex;flex-direction:column}.preview-banner{background:var(--color-warning);color:#000;padding:.5rem;display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;z-index:1000;position:sticky;top:0}.qp-container{max-width:1000px;margin:-30px auto var(--space-2xl);width:90%;position:relative;z-index:10}@media(max-width:768px){.qp-container{margin-top:-20px;width:95%}}.quiz-player-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:var(--space-m);color:var(--text-muted)}.quiz-player-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:var(--space-m);color:var(--color-danger)}
