:root{--accent: #4f46e5;--accent-fonce: #4338ca;--accent-pale: #eef2ff;--accent-bord: #c7d2fe;--fond: #f6f7f9;--surface: #ffffff;--surface-2: #f9fafb;--bordure: #e8eaed;--bordure-forte: #d7dae0;--texte: #0f1116;--texte-2: #667085;--texte-3: #98a2b3;--danger: #d92d20;--danger-pale: #fef3f2;--ok: #079455;--ok-pale: #ecfdf3;--attente-pale: #fffaeb;--attente-texte: #b54708;--rayon: 14px;--rayon-s: 10px;--rayon-xs: 8px;--ombre-1: 0 1px 2px rgba(16, 24, 40, .04), 0 1px 3px rgba(16, 24, 40, .06);--ombre-2: 0 2px 4px rgba(16, 24, 40, .04), 0 8px 20px rgba(16, 24, 40, .08);--ombre-3: 0 8px 12px rgba(16, 24, 40, .06), 0 24px 48px rgba(16, 24, 40, .14)}*{box-sizing:border-box}body{margin:0;background:var(--fond);color:var(--texte);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{margin:0 0 .5em;letter-spacing:-.02em;line-height:1.25}h1{font-size:28px;font-weight:700}h2{font-size:19px;font-weight:700}h3{font-size:16px;font-weight:650}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.header{display:flex;align-items:center;gap:14px;background:var(--surface);border-bottom:1px solid var(--bordure);padding:0 24px;height:60px;position:sticky;top:0;z-index:10}.header .logo{display:flex;align-items:center;gap:9px;font-weight:800;font-size:17px;letter-spacing:-.02em;color:var(--texte)}.header .logo:hover{text-decoration:none}.pastille{width:28px;height:28px;border-radius:9px;background:linear-gradient(140deg,var(--accent),var(--accent-fonce));box-shadow:inset 0 1px #ffffff59;display:inline-block;flex:none}.header nav,.header .liens{display:flex;align-items:center;gap:4px}.header a:not(.logo):not(.bouton){color:var(--texte-2);font-size:14px;font-weight:550;padding:7px 10px;border-radius:var(--rayon-xs)}.header a:not(.logo):not(.bouton):hover{color:var(--texte);background:var(--surface-2);text-decoration:none}.header .droite{margin-left:auto;display:flex;align-items:center;gap:8px}.page{max-width:1100px;margin:0 auto;padding:36px 24px 72px}.page>h1{margin-bottom:20px}.bouton{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:var(--rayon-s);padding:10px 18px;font-size:14px;font-weight:600;font-family:inherit;line-height:1.2;cursor:pointer;background:var(--accent);color:#fff;box-shadow:var(--ombre-1);transition:background .12s ease,box-shadow .12s ease,transform .06s ease}.bouton:hover{background:var(--accent-fonce)}.bouton:active{transform:translateY(1px)}.bouton:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.bouton.secondaire{background:var(--surface);color:var(--texte);border-color:var(--bordure-forte)}.bouton.secondaire:hover{background:var(--surface-2);border-color:var(--texte-3)}.bouton.danger{background:var(--danger)}.bouton.danger:hover{background:#b42318}.bouton.large{width:100%}.bouton.petit{padding:6px 12px;font-size:12.5px;border-radius:var(--rayon-xs)}input,textarea,select{font-family:inherit;font-size:14.5px;color:var(--texte);background:var(--surface);border:1px solid var(--bordure-forte);border-radius:var(--rayon-s);padding:10px 13px;transition:border-color .12s ease,box-shadow .12s ease}input::placeholder,textarea::placeholder{color:var(--texte-3)}input:hover:not(:disabled),textarea:hover:not(:disabled),select:hover:not(:disabled){border-color:var(--texte-3)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-pale)}input:disabled,textarea:disabled,select:disabled{background:var(--surface-2);color:var(--texte-3);cursor:not-allowed}textarea{line-height:1.55;resize:vertical}select{appearance:none;padding-right:34px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5 6 6.5l5-5' stroke='%23667085' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;cursor:pointer}input[type=checkbox],input[type=radio]{width:16px;height:16px;padding:0;accent-color:var(--accent);cursor:pointer}input[type=file]{padding:8px;font-size:13px}.champ{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.champ label,.champ-libelle{display:block;font-size:13.5px;font-weight:600;color:var(--texte);margin-bottom:0}.champ input.valide{border-color:var(--ok)}.lien{background:none;border:none;padding:0;color:var(--accent);cursor:pointer;font-size:inherit;font-family:inherit;text-align:left}.lien:hover{text-decoration:underline}.carte{background:var(--surface);border:1px solid var(--bordure);border-radius:var(--rayon);box-shadow:var(--ombre-1);padding:20px}.message-erreur{color:var(--danger);background:var(--danger-pale);border:1px solid #fecdca;border-radius:var(--rayon-s);padding:10px 12px;font-size:13.5px;margin:10px 0}.message-info{background:var(--accent-pale);border:1px solid var(--accent-bord);color:var(--texte);border-radius:var(--rayon-s);padding:11px 13px;font-size:13.5px;line-height:1.55;margin:10px 0}.auth-page{min-height:100vh;display:grid;align-content:center;justify-items:center;gap:20px;padding:24px;background:radial-gradient(60rem 30rem at 50% -8rem,var(--accent-pale),transparent 70%),var(--fond)}.marque-auth{display:flex;align-items:center;gap:10px;font-weight:800;font-size:20px;letter-spacing:-.02em}.marque-auth .pastille{width:30px;height:30px;border-radius:10px}.auth-carte{width:400px;max-width:100%;padding:32px;box-shadow:var(--ombre-2)}.auth-carte h1{font-size:24px;margin-bottom:20px}.vide{text-align:center;padding:88px 24px;max-width:520px;margin:0 auto}.vide h1{font-size:30px;margin:0 0 10px}.vide p{color:var(--texte-2);font-size:15.5px;margin:0}.vide .actions{display:flex;gap:10px;justify-content:center;margin-top:26px}.grille-projets{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px;margin-top:20px}.tuile-projet{overflow:hidden;padding:0;cursor:pointer;transition:box-shadow .15s ease,transform .15s ease,border-color .15s ease}.tuile-projet:hover{box-shadow:var(--ombre-2);border-color:var(--bordure-forte);transform:translateY(-2px)}.tuile-projet .visuel{aspect-ratio:16 / 9;background-color:var(--surface-2);background-image:linear-gradient(45deg,var(--bordure) 25%,transparent 25%,transparent 75%,var(--bordure) 75%),linear-gradient(45deg,var(--bordure) 25%,transparent 25%,transparent 75%,var(--bordure) 75%);background-size:16px 16px;background-position:0 0,8px 8px;width:100%;object-fit:cover;display:block;border-bottom:1px solid var(--bordure)}.tuile-projet img.visuel{background-image:none}.tuile-projet .infos{padding:12px 14px;font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.voile{position:fixed;inset:0;background:#0c111d8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;z-index:50;padding:24px}.modal{width:660px;max-width:100%;max-height:calc(100vh - 64px);overflow:auto;padding:28px;position:relative;box-shadow:var(--ombre-3);border-radius:18px}.modal.large{width:880px}.modal h2{font-size:21px;padding-right:40px}.modal .fermer{position:absolute;top:18px;right:18px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--bordure);background:var(--surface);border-radius:var(--rayon-xs);font-size:17px;line-height:1;cursor:pointer;color:var(--texte-2)}.modal .fermer:hover{background:var(--surface-2);color:var(--texte)}.onglets,.onglets-editeur{display:flex;gap:6px;margin:18px 0;flex-wrap:wrap;background:var(--surface-2);border:1px solid var(--bordure);border-radius:999px;padding:4px;width:fit-content;max-width:100%}.onglet,.pill{border:1px solid transparent;background:none;padding:7px 15px;border-radius:999px;font-weight:600;font-size:13.5px;font-family:inherit;cursor:pointer;color:var(--texte-2);white-space:nowrap;transition:background .12s ease,color .12s ease}.onglet:hover,.pill:hover{color:var(--texte);background:#0f11160a}.onglet.actif,.pill.active{background:var(--surface);color:var(--texte);border-color:var(--bordure);box-shadow:var(--ombre-1)}.apercu-video{background:var(--surface-2);border:1px solid var(--bordure);border-radius:var(--rayon-s);padding:16px;display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:12px}.apercu-video img{max-width:320px;width:100%;border-radius:var(--rayon-xs);display:block;box-shadow:var(--ombre-1)}.progression{width:260px;height:8px;vertical-align:middle;accent-color:var(--accent)}.compteur{font-size:12.5px;color:var(--texte-3)}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid transparent}.badge.pending{background:var(--attente-pale);color:var(--attente-texte);border-color:#fedf89}.badge.failed{background:var(--danger-pale);color:#b42318;border-color:#fecdca}.badge.ready{background:var(--ok-pale);color:#067647;border-color:#abefc6}.transcript-boite{white-space:pre-wrap;font-size:13.5px;line-height:1.7;color:var(--texte-2);padding:18px;max-height:400px;overflow:auto}.selecteur-langue-ui{border:1px solid var(--bordure-forte);background:var(--surface);border-radius:var(--rayon-xs);padding:6px 10px;font-size:13px;font-weight:600;color:var(--texte-2);cursor:pointer}.selecteur-langue-ui:hover{background:var(--surface-2);color:var(--texte)}.grille-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.slot{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:1.5px dashed var(--bordure-forte);border-radius:var(--rayon-s);padding:12px;cursor:pointer;min-height:118px;text-align:center;position:relative;overflow:hidden;background:var(--surface-2);transition:border-color .12s ease,background .12s ease}.slot:hover{border-color:var(--accent);background:var(--accent-pale)}.slot.obligatoire{border-color:var(--accent);border-style:solid;background:var(--surface)}.slot img{width:100%;aspect-ratio:1 / 1;object-fit:cover;border-radius:var(--rayon-xs)}.slot-plus{font-size:22px;line-height:1;color:var(--texte-3)}.slot-nom{font-size:12px;color:var(--texte-2);font-weight:600;line-height:1.3}.tuile-mode{flex:1;display:flex;flex-direction:column;gap:4px;text-align:left;border:1px solid var(--bordure-forte);border-radius:var(--rayon-s);padding:14px;background:var(--surface);cursor:pointer;font-size:12.5px;color:var(--texte-2);font-family:inherit;transition:border-color .12s ease,box-shadow .12s ease}.tuile-mode:hover{border-color:var(--texte-3)}.tuile-mode strong{font-size:14px;color:var(--texte)}.tuile-mode.active{border-color:var(--accent);background:var(--accent-pale);box-shadow:0 0 0 3px var(--accent-pale)}.grille-templates{display:grid;grid-template-columns:repeat(auto-fill,minmax(134px,1fr));gap:10px}.tuile-template{border:1px solid var(--bordure-forte);border-radius:var(--rayon-s);padding:16px 10px;background:var(--surface);font-size:13px;font-weight:600;font-family:inherit;color:var(--texte);cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease,transform .12s ease}.tuile-template:hover{border-color:var(--accent);transform:translateY(-1px);box-shadow:var(--ombre-1)}.tuile-template.active{border-color:var(--accent);background:var(--accent-pale);box-shadow:0 0 0 3px var(--accent-pale)}.grille-choix{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.pipeline-etapes{list-style:none;display:grid;gap:10px;margin-bottom:14px;padding:0}.pipeline-etapes li{display:flex;align-items:center;gap:11px;font-size:14px;color:var(--texte-2)}.pipeline-etapes li .rang{display:inline-flex;align-items:center;justify-content:center;flex:none;width:25px;height:25px;border-radius:50%;border:1.5px solid var(--bordure-forte);font-size:12px;font-weight:700}.pipeline-etapes li.actif{color:var(--accent);font-weight:600}.pipeline-etapes li.actif .rang{border-color:var(--accent);color:var(--accent)}.pipeline-etapes li.fait{color:var(--texte)}.pipeline-etapes li.fait .rang{background:var(--accent);border-color:var(--accent);color:#fff}.pipeline-etapes li.echec{color:var(--danger)}.pipeline-etapes li.echec .rang{border-color:var(--danger);color:var(--danger)}.image-editeur,.canvas-editeur{display:block;width:100%;height:auto;border-radius:var(--rayon-s);border:1px solid var(--bordure);background:#000;touch-action:none}.image-editeur{cursor:crosshair}.point-modify{position:absolute;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;border:2px solid #fff;background:var(--accent);box-shadow:0 0 0 2px #00000059;pointer-events:none}.ligne-version{display:flex;gap:12px;align-items:flex-start}.ligne-version img{width:76px;height:43px;object-fit:cover;border-radius:var(--rayon-xs);border:1px solid var(--bordure);background:#000;flex:none}.zone-point{display:block;width:100%;padding:0;border:none;background:none;cursor:crosshair}.zone-point:disabled{cursor:default}.bloc-titres{border:1px solid var(--bordure)}.entete-bloc{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.ligne-titre{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px;padding:8px 11px;border-radius:var(--rayon-xs);background:var(--surface-2);border:1px solid var(--bordure)}.texte-redaction{font-size:13.5px;line-height:1.6;white-space:pre-wrap;background:var(--surface-2);border:1px solid var(--bordure);border-radius:var(--rayon-xs);padding:11px 13px;margin:0}.liste-tags{font-size:13px;color:var(--texte-2);margin:0;word-break:break-word}.video-tutoriel{width:100%;aspect-ratio:16 / 9;border:0;border-radius:var(--rayon-s);margin:14px 0}.etapes-tutoriel{list-style:none;display:grid;gap:16px;margin:18px 0;padding:0}.etapes-tutoriel li{display:flex;gap:13px;align-items:flex-start}.rang-tutoriel{display:inline-flex;align-items:center;justify-content:center;flex:none;width:26px;height:26px;border-radius:50%;background:var(--accent);color:#fff;font-size:13px;font-weight:700}.etapes-tutoriel p{margin:3px 0 0;font-size:13.5px;color:var(--texte-2);line-height:1.55}.ligne-etape{display:grid;grid-template-columns:1fr minmax(240px,360px);align-items:center;gap:16px;padding:11px 0;border-bottom:1px solid var(--bordure);font-weight:550}.ligne-etape:last-of-type{border-bottom:none}.ligne-etape select{width:100%}@media(max-width:640px){.ligne-etape{grid-template-columns:1fr;gap:6px}.page{padding:24px 16px 56px}.grille-slots{grid-template-columns:repeat(2,1fr)}}
