.rt-shell{border:1px solid #cfd9e3;border-radius:12px;background:#fff;overflow:hidden;box-shadow:0 4px 16px rgba(10,42,66,.04)}
.rt-shell:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px rgba(18,79,124,.12)}
.rt-shell .ql-toolbar.ql-snow{border:0;border-bottom:1px solid #dfe6ee;background:#f5f8fa;font-family:Inter,Segoe UI,Arial,sans-serif}
.rt-shell .ql-container.ql-snow{border:0;font-family:inherit}
/* Ombre portee des menus deroulants (titre, alignement, couleur) pour les detacher du fond. */
.rt-shell .ql-toolbar.ql-snow .ql-picker-options{box-shadow:0 8px 24px rgba(10,42,66,.14)}
/* Libelles francais du menu des styles de titre (remplacent "Heading 2/3/4"). */
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-label::before,
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-item::before{content:'Normal'}
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]::before,
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]::before{content:'Titre 1'}
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]::before,
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]::before{content:'Titre 2'}
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]::before,
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]::before{content:'Titre 3'}
.rt-editor .ql-editor{min-height:190px;padding:18px;font-size:16px;line-height:1.65;color:var(--ink)}
.rt-editor .ql-editor.ql-blank::before{color:#91a0ad;font-style:normal;left:18px;right:18px}
.rt-editor .ql-editor h2{font-size:1.65rem}
.rt-editor .ql-editor h3{font-size:1.35rem}
.rt-editor .ql-editor h4{font-size:1.15rem}
.rt-editor .ql-editor blockquote{margin:1rem 0;padding:.7rem 1rem;border-left:4px solid var(--orange);background:#fff8ed}
.rt-editor .ql-editor a,.rich-content a{color:var(--blue);text-decoration:underline}
.rt-source{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
/* Message d'etat de l'envoi d'image. */
.rt-status{padding:8px 14px;border-top:1px solid #dfe6ee;background:#f5f8fa;font-size:14px;color:var(--blue)}
.rt-status-error{background:#fdf2f2;color:#b23b3b}
/* Images inserees : responsives dans l'editeur comme dans les pages publiees. */
.rt-editor .ql-editor img{max-width:100%;height:auto}
.rich-content img,.lesson-content img{max-width:100%;height:auto;display:block;margin:1.1rem 0;border-radius:10px}
.rich-content{font-size:17px;line-height:1.8}
.rich-content h2,.rich-content h3,.rich-content h4{color:var(--navy);line-height:1.25}
.rich-content blockquote{margin:1.2rem 0;padding:.8rem 1.1rem;border-left:4px solid var(--orange);background:#fff8ed}
.rich-content ul,.rich-content ol{padding-left:1.4rem}
@media(max-width:650px){.rt-editor .ql-editor{min-height:160px;padding:14px}}

/* Menus Police et Taille : libelles lisibles et apercu de la police. */
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-font{width:120px}
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-size{width:132px}
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-font .ql-picker-label::before,.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-font .ql-picker-item::before{content:'Police'}
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-size .ql-picker-label::before,.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-size .ql-picker-item::before{content:'Taille'}
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-font .ql-picker-label[data-value="Arial"]::before,.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-font .ql-picker-item[data-value="Arial"]::before{content:'Arial';font-family:Arial}
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-font .ql-picker-label[data-value="Georgia"]::before,.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-font .ql-picker-item[data-value="Georgia"]::before{content:'Georgia';font-family:Georgia}
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-font .ql-picker-label[data-value="Times New Roman"]::before,.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-font .ql-picker-item[data-value="Times New Roman"]::before{content:'Times New Roman';font-family:Times New Roman}
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-font .ql-picker-label[data-value="Courier New"]::before,.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-font .ql-picker-item[data-value="Courier New"]::before{content:'Courier New';font-family:Courier New}
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-font .ql-picker-label[data-value="Verdana"]::before,.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-font .ql-picker-item[data-value="Verdana"]::before{content:'Verdana';font-family:Verdana}
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-font .ql-picker-label[data-value="Trebuchet MS"]::before,.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-font .ql-picker-item[data-value="Trebuchet MS"]::before{content:'Trebuchet MS';font-family:Trebuchet MS}
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-size .ql-picker-label[data-value="12px"]::before,.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-size .ql-picker-item[data-value="12px"]::before{content:'Tr\0000E8s petit (12)'}
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-size .ql-picker-label[data-value="14px"]::before,.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-size .ql-picker-item[data-value="14px"]::before{content:'Petit (14)'}
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-size .ql-picker-label[data-value="16px"]::before,.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-size .ql-picker-item[data-value="16px"]::before{content:'Normal (16)'}
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-size .ql-picker-label[data-value="18px"]::before,.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-size .ql-picker-item[data-value="18px"]::before{content:'Grand (18)'}
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-size .ql-picker-label[data-value="24px"]::before,.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-size .ql-picker-item[data-value="24px"]::before{content:'Tr\0000E8s grand (24)'}
.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-size .ql-picker-label[data-value="32px"]::before,.rt-shell .ql-toolbar.ql-snow .ql-picker.ql-size .ql-picker-item[data-value="32px"]::before{content:'Titre (32)'}
/* Les tailles choisies doivent aussi s'appliquer a l'affichage public. */
.rich-content span[style*='font-size'],.lesson-content span[style*='font-size']{line-height:1.5}
