@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700&display=swap");:root{--ink:#171524;--muted:#757183;--line:#e8e6ee;--canvas:#f7f7fa;--violet:#6849f6;--violet2:#5636e6;--soft:#eeeaff;--green:#128a68;--green-soft:#e5f7f0;--blue:#3272db;--blue-soft:#e8f1ff;--orange:#cf712d;--orange-soft:#fff0e3}*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font:15px DM Sans,sans-serif}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:3px solid #c9beff;outline-offset:2px}h1,h2,h3{font-family:Manrope,sans-serif}.portal{min-height:100dvh;display:grid;grid-template-columns:255px 1fr}.side{height:100dvh;position:-webkit-sticky;position:sticky;top:0;display:flex;flex-direction:column;padding:26px 18px 18px;background:#fff;border-right:1px solid var(--line);z-index:20}.brand{display:flex;align-items:center;gap:9px;font:700 19px Manrope}.brand>span{width:34px;height:34px;display:grid;place-items:center;color:#fff;background:var(--violet);border-radius:10px}.brand b{padding:4px 6px;color:var(--violet);background:var(--soft);border-radius:6px;letter-spacing:.05em}.brand b,.side nav p{font-size:10px;text-transform:uppercase}.side nav p{margin:30px 11px 8px;color:#a4a0ae;font-weight:700;letter-spacing:.08em}.side nav button{width:100%;height:44px;padding:0 11px;border:0;display:flex;align-items:center;gap:10px;color:#706c7c;background:transparent;border-radius:10px;text-align:left}.side nav button.active,.side nav button:hover{color:var(--violet);background:var(--soft);font-weight:600}.side nav button>svg:last-child,.side nav em{margin-left:auto;font-size:10px;font-style:normal}.help-card{margin-top:auto;padding:15px;background:#f6f3ff;border-radius:13px}.help-card>span{width:34px;height:34px;display:grid;place-items:center;color:var(--violet);background:#fff;border-radius:9px}.help-card strong{display:block;margin-top:9px}.help-card p{margin:4px 0 10px;color:var(--muted);font-size:11px;line-height:1.45}.help-card button{padding:0;border:0;color:var(--violet);background:transparent;font-size:12px;font-weight:600}.user-chip{margin-top:14px;padding-top:14px;display:flex;align-items:center;gap:9px}.avatar{width:38px;height:38px;display:grid;place-items:center;color:#5b43bf;background:#e5dfff;border-radius:11px;font-weight:700}.user-chip div{flex:1 1;display:flex;flex-direction:column}.user-chip small{color:var(--muted)}.close-mobile,.menu-button{display:none}.main{min-width:0}.topbar{height:70px;padding:0 36px;position:-webkit-sticky;position:sticky;top:0;justify-content:space-between;background:rgba(255,255,255,.92);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10}.topbar,.topbar>div{display:flex;align-items:center}.topbar>div{gap:7px;color:var(--green);font-size:13px;font-weight:600}.status-dot{width:8px;height:8px;background:var(--green);border-radius:50%;box-shadow:0 0 0 4px var(--green-soft)}.profile-completion{height:39px;padding:0 12px;border:1px solid var(--line);display:flex;align-items:center;gap:8px;color:var(--ink);background:#fff;border-radius:10px}.profile-completion svg:first-child{color:var(--violet)}.content{max-width:1300px;margin:auto;padding:34px}.hero{min-height:220px;padding:35px 40px;display:flex;align-items:center;justify-content:space-between;color:#fff;background:linear-gradient(120deg,#6d4cf7,#896cff 62%,#7c5bf3);border-radius:20px;overflow:hidden;box-shadow:0 16px 36px rgba(75,53,170,.18)}.hero .eyebrow{color:#ded7ff}.hero h1{max-width:620px;margin:7px 0 9px;font-size:31px;letter-spacing:-.7px}.hero p{margin:0;color:#ebe7ff;font-size:16px}.global-progress{max-width:520px;margin-top:24px;display:flex;align-items:center;gap:13px}.global-progress>span{height:8px;flex:1 1;overflow:hidden;background:rgba(255,255,255,.24);border-radius:9px}.global-progress i{height:100%;display:block;background:#fff;border-radius:inherit}.hero-art{width:150px;height:150px;position:relative;display:grid;place-items:center;color:#fff;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.22);border-radius:50%;transform:rotate(-5deg)}.spark{position:absolute;font-size:25px}.spark.one{top:7px;right:1px}.spark.two{bottom:16px;left:-4px;font-size:18px}.layout{margin-top:30px;display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.72fr);grid-gap:20px;gap:20px}.section-title{margin-bottom:13px;display:flex;align-items:flex-end;justify-content:space-between}.eyebrow{color:var(--violet);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.09em}.section-title h2{margin:5px 0 0;font-size:22px}.section-title>span{color:var(--muted);font-size:12px}.modules{display:flex;flex-direction:column;gap:11px}.module{min-height:127px;padding:17px;display:flex;align-items:center;gap:15px;background:#fff;border:1px solid var(--line);border-radius:15px}.module.active{border-color:#b8a9ff;box-shadow:0 0 0 2px var(--soft)}.module.locked{opacity:.58}.module-icon{width:47px;height:47px;flex:0 0 auto;display:grid;place-items:center;border-radius:13px}.module-icon.violet{color:var(--violet);background:var(--soft)}.module-icon.blue{color:var(--blue);background:var(--blue-soft)}.module-icon.orange{color:var(--orange);background:var(--orange-soft)}.module-icon.green{color:var(--green);background:var(--green-soft)}.module-copy{flex:1 1}.module-copy>small{color:var(--violet);font-weight:700;text-transform:uppercase;font-size:9px;letter-spacing:.07em}.module-copy h3{margin:4px 0 3px;font-size:16px}.module-copy p{margin:0;color:var(--muted);font-size:12px}.module-copy>div{margin-top:9px;display:flex;align-items:center;gap:5px;color:#9b98a4;font-size:10px}.module-copy>div span{width:3px;height:3px;margin:0 3px;background:#b3b0ba;border-radius:50%}.module-action{min-width:125px;display:flex;flex-direction:column;align-items:flex-end;gap:5px}.module-action button,.next-live button{height:37px;padding:0 13px;border:0;display:flex;align-items:center;gap:6px;color:#fff;background:var(--violet);border-radius:9px;font-weight:600;font-size:12px}.module-action .secondary{color:var(--violet);background:var(--soft)}.passed{display:flex;align-items:center;gap:5px;color:var(--green);font-size:12px;font-weight:600}.mini-progress{width:120px;height:5px;background:#eceaf1;border-radius:5px}.mini-progress i{width:33%;height:100%;display:block;background:var(--violet);border-radius:inherit}.module-action small{color:var(--muted);font-size:10px}.right-column{display:flex;flex-direction:column;gap:14px}.certification,.next-live{padding:22px;background:#fff;border:1px solid var(--line);border-radius:16px}.cert-icon{width:46px;height:46px;margin-bottom:16px;display:grid;place-items:center;color:var(--violet);background:var(--soft);border-radius:14px}.certification h2{margin:6px 0 8px;font-size:19px}.certification>p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.certification ul{margin:18px 0;padding:0;list-style:none}.certification li{padding:8px 0;display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.certification li span{width:20px;height:20px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;font-size:9px}.certification li.done{color:var(--green)}.unlock{padding:11px;display:flex;align-items:center;gap:9px;background:#f6f4fa;border-radius:10px}.unlock>span{display:flex;flex-direction:column}.unlock small{color:var(--muted);font-size:9px}.next-live{position:relative}.next-live>svg{position:absolute;right:20px;top:20px;color:var(--violet)}.next-live h3{margin:5px 0 3px}.next-live p{margin:0;color:var(--muted);font-size:11px}.next-live>strong{display:block;margin:18px 0 10px;font-size:12px}.next-live button{width:100%;justify-content:center;background:var(--ink)}.modal-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:rgba(16,13,30,.72);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.video-modal{width:min(760px,100%);overflow:hidden;position:relative;background:#fff;border-radius:20px}.modal-close{width:40px;height:40px;position:absolute;right:15px;top:15px;z-index:2;border:0;display:grid;place-items:center;color:#fff;background:rgba(0,0,0,.45);border-radius:50%}.video-frame{height:390px;position:relative;display:grid;place-items:center;color:#fff;background:radial-gradient(circle at 60% 30%,#836eff,#35285f 65%,#1a1728)}.video-frame svg{filter:drop-shadow(0 8px 18px rgba(0,0,0,.3))}.video-frame span{position:absolute;right:17px;bottom:14px;padding:5px 8px;background:rgba(0,0,0,.5);border-radius:6px;font-size:11px}.video-copy{padding:24px}.video-copy h2{margin:6px 0}.video-copy p{color:var(--muted)}.video-copy button{height:42px;padding:0 15px;border:0;display:flex;align-items:center;gap:7px;color:#fff;background:var(--violet);border-radius:10px;font-weight:600}.onboarding{min-height:100dvh}.onboarding>header{height:72px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line)}.onboarding>header>button{border:0;color:var(--violet);background:transparent;font-weight:600}.onboarding>main{max-width:860px;margin:auto;padding:45px 20px 70px}.onboarding-intro{text-align:center}.onboarding-intro h1{margin:7px 0;font-size:34px}.onboarding-intro p{max-width:620px;margin:0 auto;color:var(--muted);font-size:16px}.steps{margin:36px 0 22px;display:grid;grid-template-columns:repeat(4,1fr)}.steps div{position:relative;display:flex;flex-direction:column;align-items:center;gap:7px;color:#aaa6b2}.steps div:not(:last-child):after{content:"";height:2px;position:absolute;left:58%;right:-42%;top:16px;background:#dedbe5}.steps div.active:not(:last-child):after{background:#a895ff}.steps span{width:33px;height:33px;z-index:1;display:grid;place-items:center;background:#e9e7ed;border-radius:50%;font-weight:700}.steps .active{color:var(--violet)}.steps .active span{color:#fff;background:var(--violet)}.steps small{font-size:11px}.form-card{padding:29px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 14px 38px rgba(45,35,85,.07)}.form-heading{display:flex;gap:13px;margin-bottom:24px}.form-heading>span{width:33px;height:33px;flex:0 0 auto;display:grid;place-items:center;color:var(--violet);background:var(--soft);border-radius:9px;font-weight:700}.form-heading h2{margin:0;font-size:20px}.form-heading p{margin:4px 0 0;color:var(--muted)}.fields{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.fields label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600}.fields label.wide{grid-column:1/-1}.fields input{height:46px;padding:0 13px;border:1px solid var(--line);border-radius:10px;outline:0}.fields input:focus{border-color:#a995ff}.choices>p{font-weight:600}.choices>button{width:100%;height:46px;margin:5px 0;padding:0 13px;border:1px solid var(--line);display:flex;align-items:center;gap:9px;background:#fff;border-radius:10px;text-align:left}.choices>button span{width:21px;height:21px;display:grid;place-items:center;border:1px solid #c9c6d0;border-radius:50%}.choices>button.selected{color:var(--violet);border-color:var(--violet);background:var(--soft)}.choices>button.selected span{color:#fff;background:var(--violet);border-color:var(--violet)}.tags{display:flex;flex-wrap:wrap;gap:8px}.tags button{height:36px;padding:0 13px;border:1px solid var(--line);background:#fff;border-radius:20px}.tags button.active{color:var(--violet);border-color:#b8a9ff;background:var(--soft)}.review{text-align:center;padding:15px 10px}.review>svg{color:var(--violet)}.review h3{font-size:20px}.review p{max-width:570px;margin:0 auto 20px;color:var(--muted);line-height:1.55}.review label{display:flex;align-items:center;justify-content:center;gap:8px}.form-card footer{margin-top:28px;padding-top:19px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.form-card footer>span{color:var(--muted);font-size:11px}.form-card footer button{height:42px;padding:0 15px;border-radius:10px;font-weight:600}.form-card footer .back{border:1px solid var(--line);background:#fff}.form-card footer .next{border:0;display:flex;align-items:center;gap:7px;color:#fff;background:var(--violet)}.form-card footer button:disabled{opacity:.35}@media(max-width:1000px){.layout{grid-template-columns:1fr}.right-column{display:grid;grid-template-columns:1fr 1fr}.hero-art{display:none}}@media(max-width:720px){.portal{display:block}.side{width:280px;position:fixed;left:-290px;transition:left .2s ease;box-shadow:20px 0 40px rgba(20,15,40,.15)}.side.open{left:0}.close-mobile{position:absolute;right:12px;top:23px;border:0;display:grid;background:transparent}.topbar{height:62px;padding:0 16px}.menu-button{border:0;display:grid;background:transparent}.profile-completion span,.topbar>div{display:none}.content{padding:20px 14px 70px}.hero{min-height:260px;padding:28px 23px}.hero h1{font-size:27px}.layout{margin-top:23px}.section-title>span{display:none}.module{align-items:flex-start;flex-wrap:wrap}.module-copy{min-width:210px}.module-action{width:100%;align-items:stretch}.module-action button{justify-content:center}.mini-progress{width:100%}.right-column{display:flex}.video-frame{height:230px}.onboarding>header{padding:0 16px}.onboarding>header>button{font-size:0}.onboarding>header>button:after{content:"Retour";font-size:13px}.onboarding>main{padding-top:30px}.onboarding-intro h1{font-size:28px}.steps small{display:none}.form-card{padding:20px 16px}.fields{grid-template-columns:1fr}.fields label.wide{grid-column:auto}.form-card footer>span{display:none}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}.auth-page{min-height:100dvh;display:grid;place-items:center;padding:20px}.auth-card{width:min(440px,100%);padding:36px 32px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 14px 38px rgba(45,35,85,.09);display:flex;flex-direction:column;gap:14px}.auth-card h1{margin:4px 0 0;font-family:Manrope;font-size:25px;letter-spacing:-.5px}.auth-card>p{margin:-6px 0 4px;color:var(--muted);line-height:1.5}.auth-card label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:600}.auth-card input{height:46px;padding:0 13px;border:1px solid var(--line);border-radius:10px;outline:0;font-weight:400}.auth-card input:focus{border-color:#a995ff}.auth-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.auth-error{padding:11px 13px;color:#b3261e;background:#fdecea;border-radius:10px;font-size:13px;font-weight:400}.auth-submit{height:46px;border:0;display:flex;align-items:center;justify-content:center;gap:8px;color:#fff;background:var(--violet);border-radius:11px;font-weight:600}.auth-submit:hover{background:var(--violet2)}.auth-switch{border:0;background:transparent;color:var(--violet);font-weight:600;font-size:13px}.clerk-auth{width:min(460px,100%);display:flex;flex-direction:column;align-items:center;gap:14px}.clerk-auth>.brand{align-self:flex-start;margin-left:18px}.test-section{margin-top:28px}.test-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.test-card{min-height:155px;padding:17px;display:grid;grid-template-columns:auto 1fr auto;align-items:start;grid-gap:12px;gap:12px;background:#fff;border:1px solid var(--line);border-radius:15px}.test-card>span{width:42px;height:42px;display:grid;place-items:center;color:var(--violet);background:var(--soft);border-radius:12px}.test-card small{color:var(--violet);font-size:10px;font-weight:700;text-transform:uppercase}.test-card h3{margin:4px 0;font-size:15px}.test-card p{margin:0;color:var(--muted);font-size:11px;line-height:1.5}.test-card>button{grid-column:2/-1;min-height:38px;border:0;color:#fff;background:var(--violet);border-radius:9px;font-weight:600}.test-card>svg{color:#aaa6b2}.test-card.passed{border-color:#9bd9c5;background:#f6fffb}.test-card.passed>svg{color:var(--green)}.video-copy button:disabled{cursor:not-allowed;opacity:.45}@media(max-width:720px){.test-grid{grid-template-columns:1fr}}.user-chip{width:100%;padding:14px 0 0;border:0;border-top:1px solid var(--line);color:var(--ink);background:transparent;text-align:left}.operator-screen{min-height:calc(100dvh - 140px)}.op-screen-head{margin-bottom:25px}.op-screen-head h1{margin:6px 0;font-size:31px}.op-screen-head p{margin:0;color:var(--muted);font-size:15px}.operator-mission-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:15px;gap:15px}.operator-mission-grid>article{padding:22px;background:#fff;border:1px solid var(--line);border-radius:16px}.operator-mission-grid article>header{display:flex;align-items:center;justify-content:space-between}.operator-mission-grid article>header>svg{color:var(--violet)}.operator-mission-grid h2{margin:15px 0 4px;font-size:19px}.operator-mission-grid article>p{margin:0;color:var(--muted)}.operator-mission-grid dl{margin:18px 0}.operator-mission-grid dl div{padding:8px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}.operator-mission-grid dt{color:var(--muted)}.operator-mission-grid dd{margin:0;font-weight:600}.operator-mission-grid footer{display:flex;gap:8px}.operator-mission-grid footer button{min-height:39px;padding:0 12px;border:0;display:flex;align-items:center;gap:6px;color:var(--violet);background:var(--soft);border-radius:9px;font-weight:600}.operator-mission-grid footer button svg{width:16px}.operator-mission-grid footer .complete{color:#fff;background:var(--green)}.op-status{padding:5px 9px;color:var(--muted);background:#f1f0f4;border-radius:20px;font-size:11px;font-weight:700}.op-status.active{color:var(--green);background:var(--green-soft)}.op-status.pending_payment{color:var(--orange);background:var(--orange-soft)}.op-messages{height:min(650px,calc(100dvh - 205px));display:grid;grid-template-columns:260px 1fr;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:17px}.op-messages>aside{padding:10px;border-right:1px solid var(--line);overflow:auto}.op-messages>aside button{width:100%;padding:11px;border:0;display:flex;align-items:center;gap:9px;background:transparent;border-radius:10px;text-align:left}.op-messages>aside button.active{color:var(--violet);background:var(--soft)}.op-messages>aside button>span{width:38px;height:38px;display:grid;place-items:center;background:#f0eef6;border-radius:10px;font-weight:700}.op-messages>aside button div,.op-messages>section>header div{display:flex;flex-direction:column}.op-messages small{color:var(--muted)}.op-messages>section{min-width:0;padding:20px;display:flex;flex-direction:column}.op-messages>section>header{display:flex;align-items:center;gap:10px}.op-messages>section>header>svg{color:var(--violet)}.op-conversation{min-height:0;padding:20px 0;flex:1 1;overflow:auto;display:flex;flex-direction:column;gap:10px}.op-message{max-width:82%;align-self:flex-start}.op-message p{margin:0;padding:10px 12px;background:#f2f1f5;border-radius:12px}.op-message small{display:block;margin:4px}.op-message.mine{align-self:flex-end;text-align:right}.op-message.mine p{color:#fff;background:var(--violet);text-align:left}.op-messages form{height:44px;padding-left:12px;display:flex;border:1px solid var(--line);border-radius:10px}.op-messages form input{min-width:0;flex:1 1;border:0;outline:0}.op-messages form button{width:38px;margin:3px;border:0;display:grid;place-items:center;color:#fff;background:var(--violet);border-radius:8px}.locked-screen{max-width:620px;margin:60px auto;padding:45px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:20px}.locked-screen>svg{width:48px;height:48px;color:var(--violet)}.locked-screen h1{font-size:27px}.locked-screen p{color:var(--muted);line-height:1.6}.locked-screen button{min-height:43px;padding:0 16px;border:0;color:#fff;background:var(--violet);border-radius:10px;font-weight:600}.op-empty{grid-column:1/-1;padding:40px;text-align:center;color:var(--muted);background:#fff;border:1px dashed #d7d3df;border-radius:14px}.op-empty>svg{color:var(--violet)}.op-empty h3{margin:10px 0 5px;color:var(--ink)}.op-empty p{margin:0}@media(max-width:800px){.op-messages,.operator-mission-grid{grid-template-columns:1fr}.op-messages{height:620px}.op-messages>aside{height:100px;border-right:0;border-bottom:1px solid var(--line);display:flex;overflow-x:auto}.op-messages>aside button{min-width:180px}.op-screen-head h1{font-size:27px}}.brand .brand-logo{width:132px;height:auto;display:block}.brand .brand-logo+b{padding:4px 6px;color:#a84320;background:#ffebe3;border-radius:6px;font-size:9px;text-transform:uppercase;letter-spacing:.05em}