*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--bg-deep);color:var(--text);line-height:1.6;overflow-x:hidden}p,li,figcaption{text-wrap:pretty}h1,h2,h3{text-wrap:balance}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]),textarea,select{background:rgba(var(--brand-surface-card-rgb),.6);color:var(--text, #e5e7eb);border:1px solid rgba(var(--brand-primary-rgb),.25);border-radius:8px;padding:10px 14px;font-family:inherit;font-size:14px;line-height:1.4;width:100%;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color-scheme:dark}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]):hover,textarea:hover,select:hover{border-color:rgba(var(--brand-primary-rgb),.4)}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]):focus,textarea:focus,select:focus{outline:none;border-color:rgba(var(--brand-primary-rgb),.7);box-shadow:0 0 0 3px rgba(var(--brand-primary-rgb),.15);background:rgba(var(--brand-surface-card-rgb),.8)}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color])::placeholder,textarea::placeholder{color:#e5e7eb66}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active,textarea:-webkit-autofill,select:-webkit-autofill{-webkit-text-fill-color:var(--text, #e5e7eb)!important;-webkit-box-shadow:0 0 0 1000px rgba(var(--brand-surface-card-rgb),.9) inset!important;caret-color:var(--cyan, var(--cyan));transition:background-color 5000s ease-in-out 0s}:where(button){font-family:inherit}button:not([class]){background:rgba(var(--brand-surface-card-rgb),.6);color:var(--text, #e5e7eb);border:1px solid rgba(var(--brand-primary-rgb),.25);border-radius:8px;padding:10px 18px;font-family:inherit;font-size:14px;cursor:pointer;transition:all .2s ease}button:not([class]):hover{border-color:rgba(var(--brand-primary-rgb),.5);background:rgba(var(--brand-surface-card-rgb),.8)}.grid-bg{position:fixed;inset:0;z-index:var(--z-grid);opacity:.4;pointer-events:none}.grid-bg:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(var(--brand-primary-rgb),.03) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--brand-primary-rgb),.03) 1px,transparent 1px);background-size:60px 60px}.grid-bg:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 80% 50% at 50% 0%,rgba(var(--brand-primary-rgb),.08) 0%,transparent 60%),radial-gradient(ellipse 60% 40% at 80% 100%,rgba(168,85,247,.06) 0%,transparent 50%)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes gridPulse{0%,to{opacity:.3}50%{opacity:.5}}.animate-on-scroll{opacity:0;transform:translateY(40px);transition:all .8s ease-out}.animate-on-scroll.visible{opacity:1;transform:translateY(0)}@media(min-width:768px){.grid-bg:before{animation:gridPulse 8s ease-in-out infinite}}select option{background-color:var(--bg-card);color:var(--text)}.container{max-width:100%;margin:0 auto;padding:0 var(--container-padding);position:relative;z-index:var(--z-content)}@media(min-width:1024px){.container{max-width:var(--container-max-width);padding:0 var(--space-lg)}}.btn{font-family:var(--font-mono);font-size:var(--text-base);font-weight:600;padding:14px 24px;min-height:44px;border-radius:var(--radius-md);text-decoration:none;text-transform:uppercase;letter-spacing:.05em;transition:all var(--transition-base);position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs)}.btn-primary{background:var(--gradient-cta);color:#fff;box-shadow:var(--shadow-md)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-secondary{background:var(--glass);border:1px solid var(--border);color:var(--text)}.btn-secondary:hover{border-color:var(--cyan);background:rgba(var(--brand-primary-rgb),.1)}@media(min-width:768px){.btn{padding:18px 40px}.btn-primary:hover{transform:translateY(-4px)}}.main-nav{position:fixed;top:0;left:0;right:0;z-index:var(--z-nav);padding:var(--space-md) var(--space-lg);background:rgba(var(--brand-surface-deep-rgb),.85);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);transition:all var(--transition-base)}.main-nav.scrolled{padding:var(--space-sm) var(--space-lg);background:rgba(var(--brand-surface-deep-rgb),.95)}.nav-content{max-width:var(--container-max-width);margin:0 auto;display:flex;align-items:center;justify-content:space-between}@media(max-width:600px){.nav-content{padding:0 16px!important}}.logo{display:flex;align-items:center;gap:var(--space-md);text-decoration:none}.logo img{height:28px;width:auto}.logo-subtitle{display:block;font-family:var(--font-mono);font-size:.62rem;font-weight:500;color:var(--cyan);text-transform:uppercase;letter-spacing:.22em;opacity:.8;white-space:nowrap}@media(max-width:767px){.logo{gap:var(--space-sm)}}@media(min-width:768px){.logo img{height:36px}.logo-subtitle{font-size:var(--text-xs);letter-spacing:.3em}}.nav-links{display:none}@media(min-width:768px){.nav-links{display:flex;align-items:center;gap:var(--space-2xl);list-style:none}.nav-links a{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-muted);text-decoration:none;text-transform:uppercase;letter-spacing:.1em;transition:color var(--transition-base);position:relative}.nav-links a:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--cyan);transition:width var(--transition-base)}.nav-links a:hover,.nav-links a.active{color:var(--cyan)}.nav-links a:hover:after,.nav-links a.active:after{width:100%}.nav-links a.nav-cta:after{display:none}.nav-links a.nav-live{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.nav-links a.nav-live i{color:var(--cyan)}}@media(min-width:1280px){.nav-links{gap:var(--space-lg)}.nav-links a{letter-spacing:.06em;white-space:nowrap}.nav-links .nav-cta{white-space:nowrap;padding:8px 14px}}@media(min-width:1280px)and (max-width:1365px){.nav-links{gap:20px}.nav-links a{letter-spacing:.04em}.nav-links>li.nav-accueil{display:none}}.nav-cta{display:inline-block;background:rgba(var(--brand-surface-card-rgb),.6);backdrop-filter:blur(10px);color:var(--cyan);padding:8px 20px;border:2px solid var(--cyan);border-radius:var(--radius-lg);font-weight:600;font-size:.9rem;transition:all .3s ease;position:relative;overflow:hidden}.nav-cta:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(var(--brand-primary-rgb),.3),transparent);transition:left .5s}.nav-cta:hover{background:var(--cyan);color:var(--bg);box-shadow:0 0 15px rgba(var(--brand-primary-rgb),.6),0 0 25px rgba(var(--brand-primary-rgb),.3);transform:translateY(-2px);border-color:var(--cyan)}.nav-cta:hover:before{left:100%}.nav-cta i{margin-right:6px}.mobile-menu{display:block;background:rgba(var(--brand-surface-card-rgb),.6);backdrop-filter:blur(10px);border:2px solid var(--cyan);color:var(--cyan);font-size:1.3rem;cursor:pointer;min-width:44px;min-height:44px;padding:var(--space-xs);border-radius:var(--radius-md);transition:all .3s ease}.mobile-menu:hover{background:var(--cyan);color:var(--bg);box-shadow:0 0 20px rgba(var(--brand-primary-rgb),.6)}@media(min-width:1280px){.mobile-menu{display:none}}@media(max-width:1279px){.nav-links{display:none}.mobile-menu{display:block}.logo img{height:32px}}.nav-groupe{position:relative}.nav-groupe__bouton{display:inline-flex;align-items:center;gap:6px;background:none;border:0;padding:6px 0;cursor:pointer;font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;border-bottom:2px solid transparent;transition:color var(--transition-base),border-color var(--transition-base)}.nav-groupe__bouton i{font-size:.7em;transition:transform var(--transition-base)}.nav-groupe__bouton:hover,.nav-groupe:hover .nav-groupe__bouton,.nav-groupe__bouton[aria-expanded=true]{color:var(--cyan)}.nav-groupe__bouton.active{color:var(--cyan);border-bottom-color:var(--cyan)}.nav-groupe:hover .nav-groupe__bouton i,.nav-groupe__bouton[aria-expanded=true] i{transform:rotate(180deg)}.nav-groupe__bouton:focus-visible{outline:2px solid var(--cyan);outline-offset:4px;border-radius:4px}.nav-panneau{position:absolute;top:100%;left:50%;transform:translate(-50%);padding-top:14px;min-width:320px;display:none;z-index:2}.nav-groupe:hover .nav-panneau,.nav-groupe__bouton[aria-expanded=true]+.nav-panneau{display:block}.nav-panneau ul{list-style:none;margin:0;padding:8px;background:var(--brand-surface-card);border:1px solid var(--border);border-radius:var(--radius-md, 12px);box-shadow:0 18px 40px #00000059}.nav-links .nav-panneau a{display:flex;align-items:flex-start;gap:12px;padding:10px 12px;border-radius:var(--radius-sm, 8px);font-family:var(--font-body, inherit);font-size:var(--text-sm);text-transform:none;letter-spacing:normal;white-space:normal;color:var(--text)}.nav-links .nav-panneau a:after{display:none}.nav-links .nav-panneau a i{width:18px;margin-top:3px;text-align:center;color:var(--cyan)}.nav-panneau a span{display:flex;flex-direction:column;gap:2px}.nav-panneau a strong{font-weight:600}.nav-panneau a small{font-size:var(--text-xs);color:var(--text-muted);line-height:1.4}.nav-links .nav-panneau a:hover,.nav-links .nav-panneau a:focus-visible,.nav-links .nav-panneau a.active{background:rgba(var(--brand-primary-rgb),.1);color:var(--text)}.nav-links .nav-panneau a:hover strong,.nav-links .nav-panneau a.active strong{color:var(--cyan)}.nav-links .nav-panneau a:focus-visible{outline:2px solid var(--cyan);outline-offset:-2px}.mobile-nav-groupe__titre{margin:0 0 var(--space-xs);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--cyan);text-transform:uppercase;letter-spacing:.18em}.mobile-nav-groupe ul{list-style:none;margin:0;padding:0 0 0 var(--space-sm);border-left:1px solid var(--border)}.mobile-nav-groupe a i{width:22px;flex:none;text-align:center}.mobile-nav-links .mobile-nav-groupe li:last-child{margin-bottom:0}.mobile-nav{position:fixed;top:0;right:-100%;width:80%;max-width:320px;height:100vh;background:rgba(var(--brand-surface-dark-rgb),.98);backdrop-filter:blur(20px);z-index:var(--z-mobile-nav);padding:var(--space-lg);padding-bottom:100px;transition:right var(--transition-base);border-left:1px solid var(--border);overflow-y:auto}.mobile-nav.open{right:0}.mobile-nav-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2xl)}.mobile-nav-close{background:none;border:none;color:var(--text);font-size:1.5rem;cursor:pointer;min-width:44px;min-height:44px;padding:var(--space-xs)}.mobile-nav-links{list-style:none;display:flex;flex-direction:column;gap:var(--space-lg)}.mobile-nav-links a{font-family:var(--font-mono);font-size:1.1rem;color:var(--text);text-decoration:none;text-transform:uppercase;letter-spacing:.05em;transition:color var(--transition-base);min-height:44px;display:flex;align-items:center;gap:var(--space-sm)}.mobile-nav-links a:hover{color:var(--cyan)}.mobile-nav-links .btn{display:block;text-align:center;padding:var(--space-md) var(--space-lg);margin-top:var(--space-md);border-radius:var(--radius-md);min-height:44px}.mobile-nav-links li:last-child{margin-bottom:var(--space-2xl)}.mobile-overlay{position:fixed;inset:0;background:var(--scrim);z-index:var(--z-overlay);opacity:0;pointer-events:none;transition:opacity var(--transition-base)}.mobile-overlay.active{opacity:1;pointer-events:auto}.section{padding:var(--space-4xl) 0;position:relative}@media(min-width:768px){.section{padding:var(--space-5xl) 0}}@media(min-width:1024px){.section{padding:120px 0}}.section-header{text-align:center;margin-bottom:var(--space-3xl)}@media(min-width:768px){.section-header{margin-bottom:var(--space-5xl)}}.section-label{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--cyan);text-transform:uppercase;letter-spacing:.2em;margin-bottom:var(--space-md);display:flex;align-items:center;justify-content:center;gap:var(--space-sm)}.section-label:before,.section-label:after{content:"";width:40px;height:1px;background:linear-gradient(90deg,transparent,var(--cyan))}.section-label:after{background:linear-gradient(90deg,var(--cyan),transparent)}.section-title{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:700;margin-bottom:var(--space-md)}@media(min-width:768px){.section-title{font-size:var(--text-4xl)}}@media(min-width:1024px){.section-title{font-size:clamp(2rem,4vw,3rem)}}.section-subtitle{font-size:var(--text-base);color:var(--text-muted);max-width:600px;margin:0 auto}@media(min-width:768px){.section-subtitle{font-size:var(--text-lg)}}.feature-card,.formation-card,.pricing-card{background:var(--glass);border:1px solid var(--border);border-radius:var(--radius-xl);transition:all var(--transition-slow);position:relative;overflow:hidden}.feature-card{padding:var(--space-lg) var(--space-md)}@media(min-width:768px){.feature-card{padding:var(--space-2xl) var(--space-xl)}}.feature-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--cyan),var(--purple));transform:scaleX(0);transform-origin:left;transition:transform var(--transition-slow)}.feature-card:hover{border-color:var(--border-hover);transform:translateY(-8px);box-shadow:var(--shadow-card)}.feature-card:hover:before{transform:scaleX(1)}.feature-icon{width:64px;height:64px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:1.8rem;margin-bottom:var(--space-lg);background:linear-gradient(135deg,rgba(var(--brand-primary-rgb),.15),rgba(var(--brand-secondary-rgb),.15));border:1px solid rgba(var(--brand-primary-rgb),.2);color:var(--cyan)}.feature-card h3{font-family:var(--font-display);font-size:var(--text-xl);margin-bottom:var(--space-sm)}.feature-card p{color:var(--text-muted);font-size:var(--text-base)}.formation-card{text-decoration:none;color:inherit;display:flex;flex-direction:column;height:100%}.formation-card .formation-header{flex:1}.formation-card .formation-body{margin-top:auto}.formation-card:hover{border-color:var(--border-hover);transform:translateY(-8px);box-shadow:var(--shadow-card-hover)}.formation-header{padding:var(--space-xl);background:linear-gradient(135deg,rgba(var(--brand-primary-rgb),.1),#a855f70d);border-bottom:1px solid var(--border);position:relative}.formation-header:after{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%2356C4F0' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");opacity:.5}.formation-badge{display:inline-block;padding:6px 14px;border-radius:var(--radius-full);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-md)}.formation-badge.available{background:#22c55e26;color:var(--green-light);border:1px solid rgba(34,197,94,.3)}.formation-badge.coming{background:#f9731626;color:#fb923c;border:1px solid rgba(249,115,22,.3)}.formation-badge.free{background:#a855f726;color:var(--purple-light);border:1px solid rgba(168,85,247,.3)}.formation-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;margin-bottom:var(--space-xs);position:relative;z-index:1}@media(min-width:768px){.formation-title{font-size:var(--text-2xl)}}.formation-subtitle{color:var(--text-muted);font-size:var(--text-sm);position:relative;z-index:1}.formation-body{padding:var(--space-xl)}.formation-desc{color:var(--text-muted);margin-bottom:var(--space-lg);line-height:1.7}.formation-meta{display:flex;gap:var(--space-md);flex-wrap:wrap}.formation-meta-item{display:flex;align-items:center;gap:var(--space-xs);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-dim)}.formation-meta-item i{color:var(--cyan)}.pricing-card{padding:var(--space-xl) var(--space-lg);text-align:center}@media(min-width:768px){.pricing-card{padding:var(--space-3xl) var(--space-2xl)}}.pricing-card.featured{border-color:var(--cyan);background:linear-gradient(135deg,rgba(var(--brand-primary-rgb),.08),#a855f70d)}.pricing-card.featured:before{content:"Populaire";position:absolute;top:-12px;left:50%;transform:translate(-50%);padding:6px 20px;background:linear-gradient(135deg,var(--cyan),var(--purple));color:var(--bg-deep);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-full)}.pricing-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-card-hover)}.pricing-name{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;margin-bottom:var(--space-xs)}.pricing-desc{color:var(--text-muted);font-size:var(--text-sm);margin-bottom:var(--space-xl)}.pricing-price{margin-bottom:var(--space-xl)}.pricing-amount{font-family:var(--font-display);font-size:var(--text-5xl);font-weight:900;color:var(--cyan)}@media(min-width:768px){.pricing-amount{font-size:3.5rem}}.pricing-period{font-size:var(--text-base);color:var(--text-dim)}.pricing-features{list-style:none;text-align:left;margin-bottom:var(--space-2xl)}.pricing-features li{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) 0;border-bottom:1px solid var(--hairline-strong);color:var(--text-muted)}.pricing-features li i{color:var(--green);font-size:.9rem}.pricing-features li.disabled,.pricing-features li.disabled i{color:var(--text-dim)}.site-footer{background:linear-gradient(180deg,rgba(var(--brand-surface-dark-rgb),.6),rgba(var(--brand-surface-deep-rgb),.95));border-top:1px solid var(--border);padding:var(--space-xl) 0 var(--space-lg);position:relative}.site-footer:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(var(--brand-primary-rgb),.02) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--brand-primary-rgb),.02) 1px,transparent 1px);background-size:24px 24px;pointer-events:none}.footer-main{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:var(--space-lg);text-align:center;padding-bottom:var(--space-lg);border-bottom:1px solid var(--border)}.footer-brand{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm)}.footer-logo{width:70px;filter:drop-shadow(0 0 10px rgba(var(--brand-primary-rgb),.3))}.footer-tagline{font-size:.85rem;color:var(--text-muted);line-height:1.6;margin:0}.footer-separator{display:none}.footer-links{display:flex;flex-direction:column;gap:var(--space-md)}.footer-links-primary,.footer-links-secondary{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-sm) var(--space-lg)}.footer-links a{color:var(--text-muted);text-decoration:none;font-size:.9rem;padding:var(--space-xs);min-height:44px;display:inline-flex;align-items:center;transition:color .3s ease}.footer-links a:hover{color:var(--cyan)}.footer-links-secondary{font-size:.8rem}.footer-links-secondary a{font-size:.8rem;color:var(--text-dim)}.footer-bottom{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:var(--space-md);padding-top:var(--space-lg)}.footer-social{display:flex;gap:var(--space-md)}.footer-social a{width:40px;height:40px;border-radius:var(--radius-md);background:rgba(var(--brand-primary-rgb),.1);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--text-muted);text-decoration:none;transition:all .3s ease}.footer-social a:hover{background:rgba(var(--brand-primary-rgb),.2);border-color:var(--cyan);color:var(--cyan);transform:translateY(-3px)}.footer-copyright{font-family:var(--font-mono);font-size:.75rem;color:var(--text-dim);margin:0}@media(min-width:768px){.footer-main{flex-direction:row;justify-content:space-between;align-items:center;text-align:left;gap:var(--space-2xl)}.footer-brand{align-items:flex-start}.footer-logo{width:80px}.footer-separator{display:block;width:1px;height:80px;background:linear-gradient(180deg,transparent,var(--cyan),transparent);box-shadow:0 0 15px rgba(var(--brand-primary-rgb),.5);flex-shrink:0}.footer-links{flex:1;align-items:flex-end}.footer-links-primary,.footer-links-secondary{justify-content:flex-end}.footer-bottom{flex-direction:row;justify-content:space-between}}@media(min-width:1024px){.site-footer{padding:var(--space-2xl) 0 var(--space-xl)}.footer-logo{width:90px}.footer-separator{height:90px}.footer-links a{font-size:.95rem}}.header-content{display:flex;align-items:center;gap:var(--space-sm)}.btn--primary{background:var(--gradient-cta);color:#fff;border:none;padding:10px 20px;border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast);box-shadow:0 2px 10px rgba(var(--brand-primary-rgb),.18)}.btn--primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(var(--brand-primary-rgb),.3)}.btn--danger{background:var(--red);color:#fff;border:none;padding:10px 20px;border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.btn--danger:hover{background:#dc2626;transform:translateY(-1px)}.btn--ghost{background:transparent;border:1px solid var(--hairline-strong);color:var(--text-muted);padding:10px 20px;border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.btn--ghost:hover{border-color:var(--text-muted);color:var(--text)}.btn--sm{padding:6px 14px;font-size:var(--text-xs)}.btn--primary:disabled,.btn--ghost:disabled,.btn--danger:disabled{opacity:.5;cursor:not-allowed}.form-group{margin-bottom:16px}.form-input{width:100%;padding:10px 14px;background:rgba(var(--brand-surface-card-rgb),.6);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font-body);font-size:var(--text-sm);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);box-sizing:border-box}.form-input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(var(--brand-primary-rgb),.15)}.form-input::placeholder{color:var(--text-dim)}select.form-input{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%238892b0' viewBox='0 0 16 16'%3E%3Cpath d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px;cursor:pointer}.settings-field__label{display:block;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.modal-backdrop{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;background:var(--scrim);backdrop-filter:blur(4px);padding:20px}.modal-backdrop .modal{background:rgba(var(--brand-surface-card-rgb),.97);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;max-width:600px;max-height:85vh;overflow-y:auto;box-shadow:0 30px 80px var(--scrim)}.modal-backdrop .modal--sm{max-width:440px}.modal__header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px 14px;border-bottom:1px solid var(--border)}.modal__header h3{margin:0;font-family:var(--font-display);font-size:var(--text-lg);color:var(--text)}.modal__close{background:none;border:none;color:var(--text-muted);font-size:1.3rem;line-height:1;cursor:pointer;padding:4px 8px;border-radius:var(--radius-sm);transition:color var(--transition-fast),background var(--transition-fast)}.modal__close:hover{color:var(--text);background:rgba(var(--brand-primary-rgb),.1)}.modal__body{padding:18px 22px}.modal__footer{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.form-label{display:block;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.logo-img--light{display:none}:root[data-appearance=light] .logo-img--dark{display:none}:root[data-appearance=light] .logo-img--light{display:inline-block}.main-nav .logo .logo-img--light,.app-logo .logo-img--light,.mobile-nav-header .logo .logo-img--light,.auth-logo .logo-img--light,.footer-logo.logo-img--light{aspect-ratio:1010 / 242;object-fit:cover;object-position:bottom}.nav-theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;background:rgba(var(--brand-surface-card-rgb),.6);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-muted);font-size:1rem;cursor:pointer;transition:all .3s ease}.nav-theme-toggle:hover{color:var(--cyan);border-color:var(--cyan)}[data-langue-seule]{display:none}html[lang=en] [data-langue-seule=en]{display:block}.avis-traduction{margin:0 0 var(--space-md, 16px);padding:10px 14px;border-left:3px solid var(--cyan);background:rgba(var(--brand-surface-card-rgb),.6);color:var(--text-muted);font-size:.95rem}.nav-langues{display:inline-flex;align-items:center}.nav-langues a{padding:6px 10px;border-radius:999px;color:var(--text-muted);font-family:var(--font-mono);font-size:.78rem;font-weight:600;letter-spacing:.06em;text-decoration:none}.nav-langues a:hover{color:var(--cyan)}.nav-langues a[aria-current=true]{background:var(--gradient-cta);color:var(--text-on-accent)}.nav-langues--mobile{height:auto;margin:4px 0}.nav-langues--mobile a{font-size:.9rem;padding:8px 14px}.mobile-theme-toggle{display:inline-flex;align-items:center;gap:10px;width:100%;padding:12px 0;background:none;border:none;color:var(--text);font-family:var(--font-mono);font-size:1.1rem;text-transform:uppercase;letter-spacing:.05em;cursor:pointer}.mobile-theme-toggle i{width:20px;text-align:center}.mobile-nav-header .logo .logo-img{height:28px;width:auto}.page-entete{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:16px 24px;margin:0 0 28px;padding-bottom:20px;border-bottom:1px solid var(--hairline)}.page-entete__principal{display:flex;align-items:flex-start;gap:16px;min-width:0;flex:1 1 420px}.page-entete__retour{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;margin-top:2px;border-radius:var(--btn-arrondi);border:1px solid var(--border);color:var(--text-muted);text-decoration:none;transition:color var(--transition-fast),border-color var(--transition-fast)}.page-entete__retour:hover{color:var(--cyan);border-color:var(--cyan)}.page-entete__retour:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.page-entete__textes{min-width:0}.page-entete .page-entete__surtitre{margin:0 0 4px;font-family:var(--font-mono);font-size:.7rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--cyan)}.page-entete .page-entete__titre{margin:0;font-family:var(--font-marque);font-size:clamp(1.4rem,1.1rem + 1vw,1.85rem);font-weight:700;line-height:1.2;color:var(--text)}.page-entete .page-entete__sous-titre{margin:8px 0 0;max-width:68ch;font-family:var(--font-body);font-size:1rem;line-height:1.5;color:var(--text-muted)}.page-entete__actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.page-entete__actions>:is(.btn,a,button){white-space:nowrap;flex-shrink:0}@media(max-width:640px){.page-entete__actions{width:100%}.page-entete__actions>*{flex:1 1 auto}}.tuiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:var(--space-md)}.tuile{--tuile-accent: var(--cyan);position:relative;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:14px;align-items:center;min-width:0;padding:16px 18px 16px 20px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.tuile:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--tuile-accent)}.tuile__icone{grid-row:1 / 3;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:var(--radius-sm);background:rgba(var(--brand-primary-rgb),.12);background:color-mix(in srgb,var(--tuile-accent) 14%,transparent);color:var(--tuile-accent);font-size:1rem}.tuile__valeur{align-self:end;min-width:0;font-family:var(--font-chiffres);font-size:1.85rem;font-weight:700;line-height:1.05;font-variant-numeric:tabular-nums;color:var(--text);overflow-wrap:anywhere}.tuile__libelle{align-self:start;min-width:0;margin-top:2px;font-family:var(--font-mono);font-size:.7rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.tuile--violet{--tuile-accent: var(--purple-text)}.tuile--vert{--tuile-accent: var(--green-light)}.tuile--orange{--tuile-accent: var(--orange-light)}:root :is(.btn,.btn-primary,.btn-secondary,.btn--primary,.btn--ghost,.btn--danger,.btn--discret,.btn-danger,.auth-btn,.jeux-btn,.lab-btn,.hero-resume-btn,.voir-tout-btn,.btn-catalogue,.lesson-nav-btn,.nav-cta,.pd-bouton:not(:where(.pd-bouton--icone)),.cw-edit,.prof-hero__cta){font-family:var(--btn-police);font-weight:var(--btn-graisse);font-size:var(--btn-taille);text-transform:var(--btn-casse);letter-spacing:var(--btn-espacement);line-height:1.2;border-radius:var(--btn-arrondi);min-height:var(--btn-hauteur);height:auto;padding:10px 22px;display:inline-flex;align-items:center;justify-content:center;gap:.6em;text-decoration:none;cursor:pointer;backdrop-filter:none;filter:none;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}:root :is(.btn-primary,.btn--primary,.auth-btn--primary,.jeux-btn--jouer,.hero-resume-btn,.btn-catalogue--start,.pd-bouton--principal,.prof-hero__cta:not(:where(.prof-hero__cta--secondary))){background:var(--gradient-cta);color:#fff;border:1px solid transparent;box-shadow:0 2px 10px rgba(var(--brand-primary-rgb),.18)}:root :is(.btn-primary,.btn--primary,.auth-btn--primary,.jeux-btn--jouer,.hero-resume-btn,.btn-catalogue--start,.pd-bouton--principal,.prof-hero__cta:not(:where(.prof-hero__cta--secondary))):hover:not(:disabled){color:#fff;transform:translateY(-1px);box-shadow:0 6px 20px rgba(var(--brand-primary-rgb),.3)}:root :is(.jeux-btn--jouer,.auth-btn--primary,.hero-resume-btn) i{color:inherit}:root :is(.btn-secondary,.btn--ghost,.auth-btn--secondary,.auth-btn--sso,.jeux-btn--interet,.lab-btn,.voir-tout-btn,.btn-catalogue--preview,.lesson-nav-btn,.nav-cta,.pd-bouton:not(:where(.pd-bouton--principal,.pd-bouton--icone,.pd-bouton--danger)),.prof-hero__cta--secondary,.cw-edit){background:transparent;color:var(--cyan);border:1px solid rgba(var(--brand-primary-rgb),.55);box-shadow:none}:root :is(.btn-secondary,.btn--ghost,.auth-btn--secondary,.auth-btn--sso,.jeux-btn--interet,.lab-btn,.voir-tout-btn,.btn-catalogue--preview,.lesson-nav-btn,.nav-cta,.pd-bouton:not(:where(.pd-bouton--principal,.pd-bouton--icone,.pd-bouton--danger)),.prof-hero__cta--secondary,.cw-edit):hover:not(:disabled){background:rgba(var(--brand-primary-rgb),.1);color:var(--cyan);border-color:var(--cyan);box-shadow:none;transform:none}:root :is(.jeux-btn--interet,.lab-btn,.nav-cta) i{color:inherit}:root .nav-cta:before{content:none}:root .btn--discret{background:transparent;color:var(--text-muted);border:1px solid transparent;box-shadow:none;padding-inline:12px}:root .btn--discret:hover:not(:disabled){color:var(--text);background:rgba(var(--brand-primary-rgb),.06)}:root :is(.btn--danger,.btn-danger,.pd-bouton--danger){background:transparent;color:var(--red-light);border:1px solid currentColor;box-shadow:none}:root :is(.btn--danger,.btn-danger,.pd-bouton--danger):hover:not(:disabled){background:#ef44441f;color:var(--red-light);transform:none}:root[data-appearance=light] :is(.btn--danger,.btn-danger,.pd-bouton--danger){color:#b91c1c}:root :is(.btn--sm,.btn-sm,.btn-xs,.lab-btn,.voir-tout-btn,.btn-catalogue,.cw-edit,.pd-bouton){min-height:var(--btn-hauteur-petit);padding:6px 14px;font-size:var(--btn-taille-petit)}:root :is(.btn-lg,.btn--lg){min-height:var(--btn-hauteur-grand);padding:14px 32px}:root :is(.btn,.btn--primary,.btn--ghost,.btn--danger,.btn--discret,.auth-btn,.jeux-btn,.lab-btn,.hero-resume-btn,.voir-tout-btn,.btn-catalogue,.lesson-nav-btn,.nav-cta,.pd-bouton,.cw-edit):focus-visible{outline:2px solid var(--cyan);outline-offset:2px}:root :is(.btn,.btn--primary,.btn--ghost,.btn--danger,.btn--discret,.auth-btn,.jeux-btn,.lab-btn,.hero-resume-btn,.voir-tout-btn,.btn-catalogue,.lesson-nav-btn,.nav-cta,.pd-bouton,.cw-edit):disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}@media(prefers-reduced-motion:reduce){:root :is(.btn,.btn--primary,.auth-btn,.jeux-btn,.hero-resume-btn):hover{transform:none}}:root :is(.btn,.btn-primary,.btn-secondary,.btn--primary,.btn--ghost,.btn--danger,.btn--discret,.btn-danger,.auth-btn,.jeux-btn,.lab-btn,.hero-resume-btn,.voir-tout-btn,.btn-catalogue,.lesson-nav-btn,.nav-cta,.pd-bouton,.cw-edit)[hidden]{display:none}.feedback-fab{position:fixed;bottom:24px;right:24px;z-index:900;width:52px;height:52px;border-radius:50%;border:none;background:var(--gradient-cta);color:#fff;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(var(--brand-primary-rgb),.3),0 0 rgba(var(--brand-primary-rgb),0);transition:transform .2s ease,box-shadow .2s ease}.feedback-fab:hover{transform:scale(1.08);box-shadow:0 6px 28px rgba(var(--brand-primary-rgb),.4),0 0 0 4px rgba(var(--brand-primary-rgb),.1)}.feedback-fab:active{transform:scale(.96)}.feedback-fab--cache{opacity:0;transform:translateY(16px) scale(.9);pointer-events:none}.feedback-fab{transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}@media(max-width:768px){.feedback-fab{display:none}}@media(min-width:769px){body:has(#feedback-fab){padding-bottom:88px}}.feedback-tabs{display:flex;gap:2px;margin-bottom:var(--space-md);border-bottom:1px solid var(--border);padding-bottom:var(--space-xs)}.feedback-tab{flex:1;padding:8px 12px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-dim);font-family:var(--font-mono);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;gap:6px}.feedback-tab:hover{color:var(--text-muted)}.feedback-tab.active{color:var(--cyan);border-bottom-color:var(--cyan)}.feedback-tab-content{display:none}.feedback-tab-content.active{display:block}.feedback-form{display:flex;flex-direction:column;gap:var(--space-md)}.feedback-form .form-group{display:flex;flex-direction:column;gap:6px}.feedback-form__error{padding:8px 12px;border-radius:var(--radius-sm);background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:var(--red);font-size:var(--text-sm)}.feedback-form__submit--success{background:linear-gradient(135deg,var(--green),rgba(34,197,94,.8))!important}.star-rating{display:flex;gap:4px}.star-rating__star{background:none;border:none;cursor:pointer;font-size:1.4rem;color:var(--text-dim);padding:2px;transition:color .15s ease,transform .15s ease}.star-rating__star:hover{transform:scale(1.15)}.star-rating__star--active{color:var(--yellow);filter:drop-shadow(0 0 4px rgba(245,158,11,.3))}.feedback-existing{margin-top:var(--space-md);padding:var(--space-sm) var(--space-md);background:#22c55e0f;border:1px solid rgba(34,197,94,.2);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);flex-wrap:wrap}.feedback-existing__text{font-size:var(--text-sm);color:var(--green);margin:0}.feedback-existing__text i{margin-right:4px}.feedback-existing__delete{padding:4px 10px;background:transparent;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-sm);color:var(--red);font-size:var(--text-xs);font-family:var(--font-mono);cursor:pointer;transition:all var(--transition-fast)}.feedback-existing__delete:hover{background:#ef444414;border-color:var(--red)}.feedback-loading,.feedback-empty{text-align:center;padding:var(--space-lg);color:var(--text-dim)}.feedback-empty i{display:block;font-size:1.5rem;margin-bottom:var(--space-sm);opacity:.5}.feedback-empty p{font-size:var(--text-sm);color:var(--text-muted);margin:0}.tickets-list{display:flex;flex-direction:column;gap:var(--space-sm)}.ticket-item{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:linear-gradient(135deg,var(--bg-card),rgba(var(--brand-surface-card-rgb),.7));border:1px solid var(--border);border-radius:var(--radius-md);transition:border-color var(--transition-fast)}.ticket-item:hover{border-color:var(--border-hover)}.ticket-item__icon{width:36px;height:36px;border-radius:var(--radius-sm);background:rgba(var(--brand-primary-rgb),.08);display:flex;align-items:center;justify-content:center;color:var(--cyan);font-size:.85rem;flex-shrink:0}.ticket-item__info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.ticket-item__subject{font-size:var(--text-sm);font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ticket-item__meta{display:flex;gap:var(--space-sm);align-items:center;flex-wrap:wrap;font-family:var(--font-mono);font-size:.6rem;color:var(--text-dim)}.ticket-category-badge{padding:1px 6px;border-radius:var(--radius-full);font-size:.55rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.ticket-category-badge--bug{background:#ef44441a;color:var(--red)}.ticket-category-badge--feature{background:#a855f71a;color:var(--purple)}.ticket-category-badge--question{background:rgba(var(--brand-primary-rgb),.1);color:var(--cyan)}.ticket-category-badge--other{background:var(--glass-light);color:var(--text-dim)}.ticket-status-badge{padding:1px 6px;border-radius:var(--radius-full);font-size:.55rem;font-weight:600}.ticket-status-badge--open{background:#22c55e1a;color:var(--green)}.ticket-status-badge--in_progress{background:rgba(var(--brand-primary-rgb),.1);color:var(--cyan)}.ticket-status-badge--resolved{background:#a855f71a;color:var(--purple)}.ticket-status-badge--closed{background:var(--glass-light);color:var(--text-dim)}.ticket-item__admin-reply{margin-top:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:rgba(var(--brand-primary-rgb),.06);border-left:2px solid var(--cyan);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-size:.7rem;color:var(--text-secondary);display:flex;gap:var(--space-xs);align-items:flex-start}.ticket-item__admin-reply i{color:var(--cyan);margin-top:2px;flex-shrink:0}.reviews-section{margin-top:var(--space-md)}.reviews-summary{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md)}.reviews-summary__avg{font-family:var(--font-display);font-size:var(--text-xl);font-weight:900;color:var(--yellow)}.reviews-summary__stars{display:flex;gap:2px;color:var(--yellow);font-size:.85rem}.reviews-summary__stars .star--empty{color:var(--text-dim)}.reviews-summary__count{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-dim)}.reviews-grid{display:flex;flex-direction:column;gap:var(--space-sm)}.review-card{padding:var(--space-md);background:linear-gradient(135deg,var(--bg-card),rgba(var(--brand-surface-card-rgb),.7));border:1px solid var(--border);border-radius:var(--radius-md)}.review-card__header{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-xs)}.review-card__avatar{width:28px;height:28px;border-radius:50%;background:var(--gradient-cta);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:.55rem;font-weight:700;color:#fff;flex-shrink:0;text-transform:uppercase}.review-card__name{font-size:var(--text-sm);font-weight:600;color:var(--text)}.review-card__date{margin-left:auto;font-family:var(--font-mono);font-size:.6rem;color:var(--text-dim)}.review-card__stars{display:flex;gap:2px;margin-bottom:var(--space-xs);font-size:.7rem}.review-card__stars .star--filled{color:var(--yellow)}.review-card__stars .star--empty{color:var(--text-dim)}.review-card__comment{font-size:var(--text-sm);color:var(--text-muted);line-height:1.5;margin:0}@media(min-width:768px){.feedback-fab{width:56px;height:56px;font-size:1.3rem;bottom:28px;right:28px}}.modal-overlay{position:fixed;inset:0;background:var(--scrim);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:20000;animation:fadeIn .2s ease}.modal-overlay .modal{background:var(--glass, rgba(var(--brand-surface-dark-rgb), .9));border:1px solid var(--border, rgba(var(--brand-primary-rgb), .15));border-radius:var(--radius-md, 12px);padding:24px;box-shadow:0 8px 32px var(--scrim);max-height:90vh;overflow-y:auto}.modal-overlay .modal--sm{max-width:400px;width:90%}.modal-overlay .modal--md{max-width:600px;width:90%}.modal-overlay .modal--lg{max-width:800px;width:90%}.modal-overlay .modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border, rgba(var(--brand-primary-rgb), .15))}.modal-overlay .modal-title{font-family:var(--font-display, "Orbitron", sans-serif);font-size:1.1rem;margin:0}.modal-overlay .modal-close{background:none;border:none;color:var(--text-muted, #94a3b8);cursor:pointer;padding:4px 8px;font-size:1rem}.modal-overlay .modal-close:hover{color:var(--text, #e2e8f0)}body:has(.mobile-nav.open) .feedback-fab{display:none}
