html,body{overflow-x:hidden;max-width:100vw}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--cq-header-height, 72px) + 16px)}img,video,iframe,embed,object{max-width:100%;height:auto}a:not(.inline-link),button,.btn,input[type="submit"],input[type="button"],.qcm-option,.qcm-mode-card,.correction-filter,.nav-link,.auth-link,.cta-btn,[role="button"]{min-height:44px}a,button,input,select,textarea{-webkit-tap-highlight-color:rgb(99 102 241 / .15)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--cq-primary,#6366f1);outline-offset:2px;border-radius:4px}html{scroll-behavior:smooth;scroll-padding-top:120px}:root{--cq-primary:#6366f1;--cq-primary-light:#818cf8;--cq-primary-dark:#4f46e5;--cq-primary-subtle:#eef2ff;--cq-success:#10b981;--cq-success-light:#d1fae5;--cq-success-dark:#059669;--cq-warning:#f59e0b;--cq-warning-light:#fef3c7;--cq-warning-dark:#d97706;--cq-error:#ef4444;--cq-error-light:#fee2e2;--cq-info:#3b82f6;--cq-info-light:#dbeafe;--cq-rose:#f43f5e;--cq-rose-dark:#e11d48;--cq-rose-light:#ffe4e6;--cq-bg:#f8fafc;--cq-surface:#ffffff;--cq-border:#e2e8f0;--cq-text:#1e293b;--cq-text-secondary:#64748b;--cq-text-muted:#94a3b8;--cq-font-sans:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;--cq-font-mono:'JetBrains Mono', 'Fira Code', monospace;--cq-text-xs:0.75rem;--cq-text-sm:0.875rem;--cq-text-base:1rem;--cq-text-lg:1.125rem;--cq-text-xl:1.25rem;--cq-text-2xl:1.5rem;--cq-text-3xl:1.875rem;--cq-text-4xl:2.25rem;--cq-space-1:0.25rem;--cq-space-2:0.5rem;--cq-space-3:0.75rem;--cq-space-4:1rem;--cq-space-5:1.25rem;--cq-space-6:1.5rem;--cq-space-8:2rem;--cq-space-10:2.5rem;--cq-space-12:3rem;--cq-space-16:4rem;--cq-radius-sm:4px;--cq-radius-md:8px;--cq-radius-lg:12px;--cq-radius-xl:14px;--cq-radius-full:9999px;--cq-shadow-sm:0 1px 2px rgba(0, 0, 0, 0.05);--cq-shadow-md:0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);--cq-shadow-lg:0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1);--cq-shadow-xl:0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);--cq-transition-fast:150ms ease;--cq-transition-base:200ms ease;--cq-transition-slow:300ms ease}body.qcm-dark,[data-theme="dark"],.dark-mode{--cq-bg:#0f172a;--cq-surface:#1e293b;--cq-card-bg:#1f2937;--cq-border:#374151;--cq-border-light:#475569;--cq-text:#f1f5f9;--cq-text-secondary:#94a3b8;--cq-text-muted:#7c8db5;--cq-primary-subtle:rgba(99, 102, 241, 0.15);--cq-shadow-sm:0 1px 3px rgba(0, 0, 0, 0.3);--cq-shadow-md:0 4px 6px -1px rgba(0, 0, 0, 0.4), 0 2px 4px -2px rgba(0, 0, 0, 0.3);--cq-shadow-lg:0 10px 15px -3px rgba(0, 0, 0, 0.5), 0 4px 6px -4px rgba(0, 0, 0, 0.4);--cq-shadow-xl:0 20px 25px -5px rgba(0, 0, 0, 0.6), 0 8px 10px -6px rgba(0, 0, 0, 0.4)}.cq-container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--cq-space-4)}.cq-container--sm{max-width:640px}.cq-container--md{max-width:768px}.cq-container--lg{max-width:1024px}.cq-container--xl{max-width:1280px}.cq-section{padding:var(--cq-space-12) 0}.cq-grid{display:grid;gap:var(--cq-space-6)}.cq-grid--2{grid-template-columns:repeat(2,1fr)}.cq-grid--3{grid-template-columns:repeat(3,1fr)}.cq-grid--4{grid-template-columns:repeat(4,1fr)}@media (max-width:768px){.cq-grid--2,.cq-grid--3,.cq-grid--4{grid-template-columns:1fr}}.cq-flex{display:flex;gap:var(--cq-space-4)}.cq-flex--center{align-items:center;justify-content:center}.cq-flex--between{justify-content:space-between}.cq-flex--wrap{flex-wrap:wrap}.cq-h1{font-size:var(--cq-text-4xl);font-weight:800;line-height:1.2;color:var(--cq-text);margin:0 0 var(--cq-space-4)}.cq-h2{font-size:var(--cq-text-2xl);font-weight:700;line-height:1.3;color:var(--cq-text);margin:0 0 var(--cq-space-3)}.cq-h3{font-size:var(--cq-text-xl);font-weight:600;line-height:1.4;color:var(--cq-text);margin:0 0 var(--cq-space-2)}.cq-h4{font-size:var(--cq-text-lg);font-weight:600;line-height:1.4;color:var(--cq-text);margin:0 0 var(--cq-space-2)}.cq-text-muted{color:var(--cq-text-muted)}.cq-text-secondary{color:var(--cq-text-secondary)}.cq-text-primary{color:var(--cq-primary)}.cq-text-success{color:var(--cq-success)}.cq-text-warning{color:var(--cq-warning)}.cq-text-error{color:var(--cq-error)}.cq-lead{font-size:var(--cq-text-lg);color:var(--cq-text-secondary);line-height:1.6}.cq-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--cq-space-2);padding:var(--cq-space-3) var(--cq-space-5);font-size:var(--cq-text-sm);font-weight:600;line-height:1;text-decoration:none;border:none;border-radius:var(--cq-radius-md);cursor:pointer;transition:all var(--cq-transition-fast);white-space:nowrap}.cq-btn:focus{outline:2px solid var(--cq-primary);outline-offset:2px}.cq-btn--primary{background:var(--cq-primary);color:#fff}.cq-btn--primary:hover{background:var(--cq-primary-dark);transform:translateY(-1px);box-shadow:var(--cq-shadow-md)}.cq-btn--secondary{background:var(--cq-surface);color:var(--cq-text);border:1px solid var(--cq-border)}.cq-btn--secondary:hover{background:var(--cq-bg);border-color:var(--cq-primary)}.cq-btn--ghost{background:#fff0;color:var(--cq-text-secondary)}.cq-btn--ghost:hover{background:var(--cq-primary-subtle);color:var(--cq-primary)}.cq-btn--success{background:var(--cq-success);color:#fff}.cq-btn--danger{background:var(--cq-error);color:#fff}.cq-btn--sm{padding:var(--cq-space-2) var(--cq-space-3);font-size:var(--cq-text-xs)}.cq-btn--lg{padding:var(--cq-space-4) var(--cq-space-8);font-size:var(--cq-text-base)}.cq-btn--block{width:100%}.cq-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.cq-card{background:var(--cq-surface);border:1px solid var(--cq-border);border-radius:var(--cq-radius-lg);padding:var(--cq-space-6);transition:all var(--cq-transition-base)}.cq-card--hover:hover{border-color:var(--cq-primary);box-shadow:var(--cq-shadow-lg);transform:translateY(-2px)}.cq-card--clickable{cursor:pointer;text-decoration:none;color:inherit;display:block}.cq-card__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--cq-space-4)}.cq-card__title{font-size:var(--cq-text-lg);font-weight:600;margin:0}.cq-card__body{color:var(--cq-text-secondary)}.cq-card__footer{margin-top:var(--cq-space-4);padding-top:var(--cq-space-4);border-top:1px solid var(--cq-border)}.cq-card__icon{width:48px;height:48px;border-radius:var(--cq-radius-lg);background:var(--cq-primary-subtle);display:flex;align-items:center;justify-content:center;font-size:var(--cq-text-2xl);color:var(--cq-primary);flex-shrink:0}.cq-badge{display:inline-flex;align-items:center;gap:var(--cq-space-1);padding:var(--cq-space-1) var(--cq-space-2);font-size:var(--cq-text-xs);font-weight:600;border-radius:var(--cq-radius-full);text-transform:uppercase;letter-spacing:.025em}.cq-badge--primary{background:var(--cq-primary-subtle);color:var(--cq-primary)}.cq-badge--success{background:var(--cq-success-light);color:var(--cq-success)}.cq-badge--warning{background:var(--cq-warning-light);color:var(--cq-warning)}.cq-badge--error{background:var(--cq-error-light);color:var(--cq-error)}.cq-badge--info{background:var(--cq-info-light);color:var(--cq-info)}.cq-badge--neutral{background:var(--cq-bg);color:var(--cq-text-secondary)}.cq-alert{display:flex;align-items:flex-start;gap:var(--cq-space-3);padding:var(--cq-space-4);border-radius:var(--cq-radius-lg);border:1px solid}.cq-alert__icon{font-size:var(--cq-text-xl);flex-shrink:0}.cq-alert__content{flex:1}.cq-alert__title{font-weight:600;margin-bottom:var(--cq-space-1)}.cq-alert--info{background:var(--cq-info-light);border-color:var(--cq-info);color:var(--cq-info)}.cq-alert--success{background:var(--cq-success-light);border-color:var(--cq-success);color:var(--cq-success)}.cq-alert--warning{background:var(--cq-warning-light);border-color:var(--cq-warning);color:#92400e}.cq-alert--error{background:var(--cq-error-light);border-color:var(--cq-error);color:var(--cq-error)}.cq-empty{text-align:center;padding:var(--cq-space-12) var(--cq-space-6);background:var(--cq-surface);border:2px dashed var(--cq-border);border-radius:var(--cq-radius-xl)}.cq-empty__icon{font-size:3rem;margin-bottom:var(--cq-space-4);opacity:.5}.cq-empty__title{font-size:var(--cq-text-xl);font-weight:600;margin-bottom:var(--cq-space-2);color:var(--cq-text)}.cq-empty__text{color:var(--cq-text-secondary);max-width:400px;margin:0 auto var(--cq-space-6)}.cq-table{width:100%;border-collapse:collapse;background:var(--cq-surface);border-radius:var(--cq-radius-lg);overflow:hidden;border:1px solid var(--cq-border)}.cq-table th,.cq-table td{padding:var(--cq-space-4);text-align:left;border-bottom:1px solid var(--cq-border)}.cq-table th{background:var(--cq-bg);font-weight:600;font-size:var(--cq-text-sm);color:var(--cq-text-secondary);text-transform:uppercase;letter-spacing:.05em}.cq-table tbody tr:hover{background:var(--cq-bg)}.cq-table tbody tr:last-child td{border-bottom:none}.cq-form-group{margin-bottom:var(--cq-space-5)}.cq-label{display:block;font-weight:500;margin-bottom:var(--cq-space-2);color:var(--cq-text)}.cq-input,.cq-select,.cq-textarea{width:100%;padding:var(--cq-space-3) var(--cq-space-4);font-size:var(--cq-text-base);border:1px solid var(--cq-border);border-radius:var(--cq-radius-md);background:var(--cq-surface);color:var(--cq-text);transition:all var(--cq-transition-fast)}.cq-input:focus,.cq-select:focus,.cq-textarea:focus{outline:none;border-color:var(--cq-primary);box-shadow:0 0 0 3px var(--cq-primary-subtle)}.cq-input::placeholder{color:var(--cq-text-muted)}.cq-hint{font-size:var(--cq-text-sm);color:var(--cq-text-muted);margin-top:var(--cq-space-2)}.cq-progress{height:8px;background:var(--cq-bg);border-radius:var(--cq-radius-full);overflow:hidden}.cq-progress__bar{height:100%;background:linear-gradient(90deg,var(--cq-primary),var(--cq-primary-light));border-radius:var(--cq-radius-full);transition:width var(--cq-transition-slow)}.cq-progress--lg{height:12px}.cq-progress--success .cq-progress__bar{background:linear-gradient(90deg,var(--cq-success),#34d399)}.cq-tabs{display:flex;gap:var(--cq-space-1);border-bottom:1px solid var(--cq-border);margin-bottom:var(--cq-space-6)}.cq-tab{padding:var(--cq-space-3) var(--cq-space-4);font-weight:500;color:var(--cq-text-secondary);background:none;border:none;border-bottom:2px solid #fff0;cursor:pointer;transition:all var(--cq-transition-fast);margin-bottom:-1px}.cq-tab:hover{color:var(--cq-text)}.cq-tab.active{color:var(--cq-primary);border-bottom-color:var(--cq-primary)}.cq-avatar{width:40px;height:40px;border-radius:50%;background:var(--cq-primary-subtle);color:var(--cq-primary);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--cq-text-sm);flex-shrink:0}.cq-avatar--sm{width:32px;height:32px;font-size:var(--cq-text-xs)}.cq-avatar--lg{width:56px;height:56px;font-size:var(--cq-text-lg)}.cq-avatar--xl{width:80px;height:80px;font-size:var(--cq-text-2xl)}.cq-stat{text-align:center}.cq-stat__value{font-size:var(--cq-text-3xl);font-weight:800;color:var(--cq-text);line-height:1;margin-bottom:var(--cq-space-1)}.cq-stat__label{font-size:var(--cq-text-sm);color:var(--cq-text-secondary)}.cq-stat__trend{font-size:var(--cq-text-xs);display:flex;align-items:center;justify-content:center;gap:var(--cq-space-1);margin-top:var(--cq-space-1)}.cq-stat__trend--up{color:var(--cq-success)}.cq-stat__trend--down{color:var(--cq-error)}.cq-link-card{display:flex;align-items:center;gap:var(--cq-space-3);padding:var(--cq-space-3) var(--cq-space-4);background:var(--cq-surface);border:1px solid var(--cq-border);border-radius:var(--cq-radius-md);text-decoration:none;color:inherit;transition:all var(--cq-transition-fast)}.cq-link-card:hover{border-color:var(--cq-primary);background:var(--cq-primary-subtle)}.cq-link-card__icon{font-size:var(--cq-text-xl)}.cq-link-card__text{flex:1}.cq-link-card__title{font-weight:600;color:var(--cq-text)}.cq-link-card__desc{font-size:var(--cq-text-sm);color:var(--cq-text-secondary)}.cq-link-card__arrow{color:var(--cq-text-muted);transition:transform var(--cq-transition-fast)}.cq-link-card:hover .cq-link-card__arrow{transform:translateX(4px);color:var(--cq-primary)}.cq-nav-hub{position:relative;background:var(--cq-bg-alt,#f8fafc);border:1px solid var(--cq-border,#e2e8f0);border-radius:24px;padding:2.5rem;margin-top:3rem;overflow:hidden;display:flex;flex-direction:column;gap:2.5rem;box-shadow:0 4px 20px rgb(0 0 0 / .04)}body.qcm-dark .cq-nav-hub{background:var(--cq-bg-alt,#0f172a);border-color:var(--cq-border,#334155);box-shadow:0 4px 20px rgb(0 0 0 / .3)}.cq-nav-hub::before{content:'';position:absolute;top:-50%;right:-20%;width:400px;height:400px;background:radial-gradient(circle,rgb(99 102 241 / .08) 0%,transparent 70%);pointer-events:none}.cq-nav-hub::after{content:'';position:absolute;bottom:-30%;left:-10%;width:300px;height:300px;background:radial-gradient(circle,rgb(16 185 129 / .06) 0%,transparent 70%);pointer-events:none}.cq-nav-hub__section{position:relative;z-index:1}.cq-nav-hub__section--primary{padding-bottom:2rem;border-bottom:1px solid rgb(99 102 241 / .1)}.cq-nav-hub__section--user,.cq-nav-hub__section--cta{padding-top:.5rem;border-top:1px solid rgb(99 102 241 / .1)}.cq-nav-hub__title{font-size:1.25rem;font-weight:700;margin-bottom:.75rem;color:var(--cq-text,#1e293b);letter-spacing:-.02em;display:flex;align-items:center;gap:.5rem}.cq-nav-hub__title::before{content:'';width:4px;height:1.2em;background:linear-gradient(180deg,var(--cq-accent,#6366f1) 0%,var(--cq-accent-alt,#8b5cf6) 100%);border-radius:4px;flex-shrink:0}.cq-nav-hub__desc{font-size:.9375rem;color:var(--cq-text-muted,#64748b);line-height:1.6;margin-bottom:1.5rem;max-width:700px}.cq-nav-hub__grid{display:grid;gap:.75rem}.cq-nav-hub__grid--4cols{grid-template-columns:repeat(4,1fr)}.cq-nav-hub__grid--3cols{grid-template-columns:repeat(3,1fr)}.cq-nav-hub__grid--2cols{grid-template-columns:repeat(2,1fr);max-width:400px}.cq-nav-hub__grid--matieres{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.cq-nav-hub__link{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:var(--cq-card-bg,#ffffff);border:1.5px solid var(--cq-border,#e2e8f0);color:var(--cq-text,#334155);text-decoration:none;font-weight:600;font-size:.9375rem;border-radius:14px;transition:all 0.3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px rgb(0 0 0 / .06),0 1px 3px rgb(0 0 0 / .04);position:relative;overflow:hidden}.cq-nav-hub__link::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--cq-accent,#6366f1) 0%,var(--cq-accent-alt,#8b5cf6) 100%);opacity:0;transition:opacity 0.3s cubic-bezier(.4,0,.2,1)}.cq-nav-hub__link:hover{background:var(--cq-card-bg,#ffffff);border-color:rgb(99 102 241 / .4);color:var(--cq-accent,#6366f1);transform:translateY(-3px);box-shadow:0 8px 24px -4px rgb(99 102 241 / .2),0 4px 12px rgb(0 0 0 / .08)}.cq-nav-hub__link:hover::before{opacity:1}.cq-nav-hub__link:focus-visible{outline:2px solid #6366f1;outline-offset:2px}.cq-nav-hub__link:active{transform:translateY(0)}.cq-nav-hub__link--accent{background:linear-gradient(135deg,var(--cq-accent,#6366f1) 0%,var(--cq-accent-alt,#8b5cf6) 100%);color:#fff;border-color:#fff0;box-shadow:0 4px 12px rgb(99 102 241 / .25)}.cq-nav-hub__link--accent::before{background:linear-gradient(90deg,rgb(255 255 255 / .3) 0%,rgb(255 255 255 / .2) 100%)}.cq-nav-hub__link--accent:hover{background:linear-gradient(135deg,#4f46e5 0%,#7c3aed 100%);color:#fff;box-shadow:0 8px 28px -4px rgb(99 102 241 / .4),0 4px 16px rgb(99 102 241 / .3);transform:translateY(-4px)}.cq-nav-hub__link--featured{border-color:rgb(99 102 241 / .4);background:linear-gradient(135deg,rgb(99 102 241 / .1) 0%,rgb(139 92 246 / .08) 100%);box-shadow:0 2px 8px rgb(99 102 241 / .12)}.cq-nav-hub__link--ghost{background:#fff0;border:1px solid rgb(100 116 139 / .2)}.cq-nav-hub__link--ghost:hover{background:rgb(255 255 255 / .5)}.cq-nav-hub__link--app{background:rgb(16 185 129 / .08);border-color:rgb(16 185 129 / .2)}.cq-nav-hub__link--app:hover{background:rgb(16 185 129 / .15);border-color:rgb(16 185 129 / .4);color:#059669}.cq-nav-hub__icon{font-size:1.25rem;flex-shrink:0;line-height:1;transition:transform 0.3s cubic-bezier(.4,0,.2,1)}.cq-nav-hub__link:hover .cq-nav-hub__icon{transform:scale(1.1)}.cq-nav-hub__label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cq-nav-hub__badge{font-size:.6875rem;font-weight:700;background:linear-gradient(135deg,var(--cq-accent,#6366f1) 0%,var(--cq-accent-alt,#8b5cf6) 100%);color:#fff;padding:.25rem .625rem;border-radius:8px;position:absolute;top:-10px;right:10px;box-shadow:0 2px 8px rgb(99 102 241 / .3);z-index:2;letter-spacing:.02em}body.qcm-dark .cq-nav-hub::before{background:radial-gradient(circle at 20% 30%,rgb(99 102 241 / .12) 0%,transparent 60%)}body.qcm-dark .cq-nav-hub::after{background:radial-gradient(circle at 80% 70%,rgb(139 92 246 / .08) 0%,transparent 60%)}body.qcm-dark .cq-nav-hub__title{color:var(--cq-text,#e5e7eb)}body.qcm-dark .cq-nav-hub__desc{color:#9ca3af}body.qcm-dark .cq-nav-hub__section--primary{border-color:rgb(255 255 255 / .08)}body.qcm-dark .cq-nav-hub__section--user,body.qcm-dark .cq-nav-hub__section--cta{border-color:rgb(255 255 255 / .08)}body.qcm-dark .cq-nav-hub__link{background:rgb(26 29 38 / .8);border-color:rgb(255 255 255 / .1);color:#d1d5db}body.qcm-dark .cq-nav-hub__link:hover{background:rgb(99 102 241 / .15);border-color:rgb(99 102 241 / .4);color:#818cf8}body.qcm-dark .cq-nav-hub__link--accent{background:linear-gradient(135deg,#6366f1 0%,#8b5cf6 100%);color:#fff}body.qcm-dark .cq-nav-hub__link--featured{background:rgb(99 102 241 / .12);border-color:rgb(99 102 241 / .3)}body.qcm-dark .cq-nav-hub__link--app{background:rgb(16 185 129 / .12);border-color:rgb(16 185 129 / .25)}body.qcm-dark .cq-nav-hub__link--app:hover{background:rgb(16 185 129 / .2);color:#34d399}body.qcm-dark .cq-nav-hub__badge{background:rgb(99 102 241 / .25);color:#a5b4fc}@media (max-width:900px){.cq-nav-hub__grid--4cols{grid-template-columns:repeat(2,1fr)}.cq-nav-hub__grid--3cols{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.cq-nav-hub{padding:1.5rem;border-radius:16px;gap:2rem}.cq-nav-hub__section--primary{padding-bottom:1.5rem}.cq-nav-hub__grid--4cols{grid-template-columns:repeat(2,1fr)}.cq-nav-hub__grid--3cols{grid-template-columns:1fr 1fr 1fr}.cq-nav-hub__grid--matieres{grid-template-columns:repeat(2,1fr)}.cq-nav-hub__link{padding:.75rem .875rem;font-size:.85rem}.cq-nav-hub__desc{font-size:.8125rem}}@media (max-width:480px){.cq-nav-hub__grid--4cols{grid-template-columns:1fr 1fr}.cq-nav-hub__grid--3cols{grid-template-columns:1fr}.cq-nav-hub__grid--2cols{grid-template-columns:1fr;max-width:none}.cq-nav-hub__grid--matieres{grid-template-columns:1fr}}.cq-icon{display:inline-block;vertical-align:-.125em;flex-shrink:0}.title-icon .cq-icon,.stat-emoji .cq-icon,.qa-icon .cq-icon{width:1.25em;height:1.25em}.cq-internal-links{position:relative;background:radial-gradient(80% 60% at 0% 0%,rgb(99 102 241 / .06),transparent 70%),radial-gradient(70% 60% at 100% 100%,rgb(139 92 246 / .05),transparent 70%),#ffffff;border:1px solid rgb(15 23 42 / .08);border-radius:24px;padding:2.5rem;margin-top:3rem;margin-bottom:4rem;max-width:1200px;margin-left:auto;margin-right:auto;overflow:hidden;box-shadow:0 1px 0 rgb(15 23 42 / .04),0 24px 60px -32px rgb(99 102 241 / .18)}.cq-internal-links--fullwidth{margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%);width:100vw;border-radius:0;padding:3rem calc(50vw - 50%)}.cq-internal-links::before{content:'';position:absolute;top:-50%;right:-20%;width:400px;height:400px;background:radial-gradient(circle,color-mix(in srgb,var(--cq-accent,#6366f1) 8%,transparent) 0%,transparent 70%);pointer-events:none}.cq-internal-links::after{content:'';position:absolute;bottom:-30%;left:-10%;width:300px;height:300px;background:radial-gradient(circle,color-mix(in srgb,var(--cq-accent-alt,#8b5cf6) 6%,transparent) 0%,transparent 70%);pointer-events:none}.cq-internal-links__title{position:relative;z-index:1;font-size:1.25rem;font-weight:700;margin-bottom:1.5rem;color:#1e293b;text-align:center;letter-spacing:-.02em}.cq-internal-links__title::after{content:'';display:block;width:40px;height:3px;background:linear-gradient(90deg,var(--cq-accent,#6366f1),var(--cq-accent-alt,#8b5cf6));border-radius:2px;margin:.75rem auto 0}.cq-internal-links__grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.cq-internal-links a{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:#fafbff;border:1px solid rgb(15 23 42 / .08);color:#334155;text-decoration:none;font-weight:500;font-size:.95rem;border-radius:14px;transition:all 0.25s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 2px rgb(15 23 42 / .04)}.cq-internal-links a:hover{background:#fff;border-color:rgb(99 102 241 / .35);color:var(--cq-accent,#6366f1);transform:translateY(-2px);box-shadow:0 10px 24px -10px rgb(99 102 241 / .35)}.cq-internal-links a:active{transform:translateY(-1px)}body.qcm-dark .cq-internal-links{background:radial-gradient(80% 60% at 0% 0%,rgb(99 102 241 / .14),transparent 70%),radial-gradient(70% 60% at 100% 100%,rgb(139 92 246 / .1),transparent 70%),#111a31;border-color:rgb(255 255 255 / .07);box-shadow:0 1px 0 rgb(255 255 255 / .04),0 30px 80px -40px rgb(99 102 241 / .45)}body.qcm-dark .cq-internal-links::before{background:radial-gradient(circle,rgb(99 102 241 / .18) 0%,transparent 70%)}body.qcm-dark .cq-internal-links::after{background:radial-gradient(circle,rgb(139 92 246 / .14) 0%,transparent 70%)}body.qcm-dark .cq-internal-links__title{color:#f8fafc}body.qcm-dark .cq-internal-links a{background:rgb(30 41 59 / .6);border-color:rgb(255 255 255 / .08);color:#e2e8f0;box-shadow:none}body.qcm-dark .cq-internal-links a:hover{background:rgb(99 102 241 / .14);border-color:rgb(129 140 248 / .45);color:#c7d2fe;box-shadow:0 12px 28px -10px rgb(99 102 241 / .45)}@media (max-width:768px){.cq-internal-links{padding:1.25rem;border-radius:14px;margin-top:1.25rem;margin-bottom:2.5rem}.cq-internal-links__grid{grid-template-columns:1fr 1fr;gap:.5rem}.cq-internal-links a{padding:.75rem .875rem;font-size:.8125rem}}@media (max-width:480px){.cq-internal-links__grid{grid-template-columns:1fr}}.cq-skeleton{background:linear-gradient(90deg,var(--cq-bg) 25%,var(--cq-border) 50%,var(--cq-bg) 75%);background-size:200% 100%;animation:cq-skeleton-pulse 1.5s infinite;border-radius:var(--cq-radius-md)}@keyframes cq-skeleton-pulse{0%{background-position:200% 0}100%{background-position:-200% 0}}.cq-spinner{width:24px;height:24px;border:3px solid var(--cq-border);border-top-color:var(--cq-primary);border-radius:50%;animation:cq-spin 0.8s linear infinite}@keyframes cq-spin{to{transform:rotate(360deg)}}.cq-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cq-mt-4{margin-top:var(--cq-space-4)}.cq-mt-6{margin-top:var(--cq-space-6)}.cq-mt-8{margin-top:var(--cq-space-8)}.cq-mb-4{margin-bottom:var(--cq-space-4)}.cq-mb-6{margin-bottom:var(--cq-space-6)}.cq-text-center{text-align:center}.cq-text-right{text-align:right}.cq-hidden{display:none!important}@media (max-width:768px){body>main,body>section,body>.campus-page,body>.qcm-catalog,.campus-container,.cq-container,.cq-section,main,.site-content,.page-content,.entry-content{padding-left:0!important;padding-right:0!important;margin-left:0!important;margin-right:0!important;max-width:100%!important;width:100%!important}.hero,.hero-section,.hero-with-h1,.page-hero,.qcm-hero,.landing-hero,.blog-hero,.hub-hero{width:100vw!important;max-width:100vw!important;margin-left:calc(-50vw + 50%)!important;margin-right:calc(-50vw + 50%)!important;padding-left:16px!important;padding-right:16px!important;border-radius:0!important;box-sizing:border-box!important}.cq-card,.card,.content-card,.qcm-card,.stats-card,.feature-card,.info-card,.dashboard-card,.hub-card,[class*="card"]{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;border-radius:12px!important}.cq-section,.section,.content-section,.page-section,.qcm-section,[class*="section"]:not(button):not(input){width:100%!important;max-width:100%!important;padding-left:16px!important;padding-right:16px!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important}.text-block,.content-block,.intro-text,.description-block,article,.entry-content p,.page-content p{width:100%!important;max-width:100%!important;padding-left:16px!important;padding-right:16px!important;box-sizing:border-box!important}.cq-grid,.grid,.cards-grid,.features-grid,.qcm-grid,[class*="grid"]{grid-template-columns:1fr!important;width:100%!important;padding-left:16px!important;padding-right:16px!important;box-sizing:border-box!important}.banner,.alert,.notice,.cq-alert,[class*="banner"],[class*="alert"]{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;border-radius:0!important}.cta,.cta-section,.cta-block,[class*="cta"]:not(button){width:100%!important;max-width:100%!important;padding-left:16px!important;padding-right:16px!important;box-sizing:border-box!important}.stats,.stats-section,.features,.features-section,.benefits,[class*="stats"],[class*="features"]{width:100%!important;max-width:100%!important;padding-left:16px!important;padding-right:16px!important;box-sizing:border-box!important}.qcm-catalog,.qcm-list,.qcm-options,.qcm-content,.qcm-container,.qcm-wrapper{width:100%!important;max-width:100%!important;padding-left:16px!important;padding-right:16px!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important}.blog-content,.blog-grid,.blog-list,.article-content,.post-content{width:100%!important;max-width:100%!important;padding-left:16px!important;padding-right:16px!important;box-sizing:border-box!important}.hub-content,.hub-grid,.hub-list,.parcours-grid,.niveau-grid,.matiere-grid{width:100%!important;max-width:100%!important;padding-left:16px!important;padding-right:16px!important;box-sizing:border-box!important}.footer-content,.footer-grid,footer .container,footer .cq-container{width:100%!important;max-width:100%!important;padding-left:16px!important;padding-right:16px!important;box-sizing:border-box!important}.dashboard-content,.dashboard-grid,.dashboard-wrapper,.dashboard-section{width:100%!important;max-width:100%!important;padding-left:16px!important;padding-right:16px!important;box-sizing:border-box!important}.form-container,.form-wrapper,.auth-form,.contact-form,form{width:100%!important;max-width:100%!important;padding-left:16px!important;padding-right:16px!important;box-sizing:border-box!important}}