/* ============================================================
   Lettrine v2.0.0 — Flatboard 5
   20 styles entièrement personnalisables via CSS custom props
   ============================================================ */
:root {
    --ltr-color:#0d6efd; --ltr-color2:#ff6b6b; --ltr-bg:#0d6efd;
    --ltr-size:4em; --ltr-font:inherit; --ltr-weight:700;
    --ltr-border-w:2px; --ltr-border-r:4px;
    --ltr-shadow-color:rgba(0,0,0,0.25); --ltr-gradient-angle:135deg;
    --ltr-line-height:0.85; --ltr-margin-r:10px; --ltr-padding:6px 12px;
    --ltr-letter-spacing:0px;
}
.ltr-active:not(.ltr-scope-all) p:first-of-type::first-letter,
.ltr-active.ltr-scope-all p::first-letter { line-height:1; }

/* 1 Classique */
.ltr-style-1:not(.ltr-scope-all) p:first-of-type::first-letter,
.ltr-style-1.ltr-scope-all p::first-letter {
    float:left;font-size:var(--ltr-size);line-height:var(--ltr-line-height);
    margin-right:var(--ltr-margin-r);margin-bottom:2px;
    font-weight:var(--ltr-weight);font-family:var(--ltr-font);
    color:var(--ltr-color);letter-spacing:var(--ltr-letter-spacing);
}
/* 2 Minimaliste */
.ltr-style-2:not(.ltr-scope-all) p:first-of-type::first-letter,
.ltr-style-2.ltr-scope-all p::first-letter {
    font-size:calc(var(--ltr-size)*.85);font-weight:var(--ltr-weight);
    line-height:1;color:var(--ltr-color);letter-spacing:-1px;
    font-family:var(--ltr-font);}

/* 3 Couleur accent */
.ltr-style-3:not(.ltr-scope-all) p:first-of-type::first-letter,
.ltr-style-3.ltr-scope-all p::first-letter {
    float:left;font-size:var(--ltr-size);line-height:var(--ltr-line-height);
    margin-right:var(--ltr-margin-r);margin-bottom:2px;
    color:var(--ltr-color);font-weight:var(--ltr-weight);font-family:var(--ltr-font);
}
/* 4 Encadrée */
.ltr-style-4:not(.ltr-scope-all) p:first-of-type::first-letter,
.ltr-style-4.ltr-scope-all p::first-letter {
    float:left;font-size:var(--ltr-size);line-height:1;padding:var(--ltr-padding);
    margin-right:var(--ltr-margin-r);margin-bottom:2px;
    border:var(--ltr-border-w) solid var(--ltr-color);border-radius:var(--ltr-border-r);
    font-weight:var(--ltr-weight);font-family:var(--ltr-font);color:var(--ltr-color);
}
/* 5 Cercle */
.ltr-style-5:not(.ltr-scope-all) p:first-of-type::first-letter,
.ltr-style-5.ltr-scope-all p::first-letter {
    float:left;font-size:calc(var(--ltr-size)*.52);line-height:1;
    padding:.28em;
    margin-right:var(--ltr-margin-r);margin-bottom:2px;
    border-radius:50%;background:var(--ltr-bg);color:#fff;font-weight:var(--ltr-weight);
    text-align:center;
    font-family:var(--ltr-font);}

/* 6 Dégradé */
.ltr-style-6:not(.ltr-scope-all) p:first-of-type::first-letter,
.ltr-style-6.ltr-scope-all p::first-letter {
    float:left;font-size:var(--ltr-size);line-height:var(--ltr-line-height);
    margin-right:var(--ltr-margin-r);margin-bottom:2px;font-weight:var(--ltr-weight);font-family:var(--ltr-font);
    background:linear-gradient(var(--ltr-gradient-angle),var(--ltr-color),var(--ltr-color2));
    -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
/* 7 Contour */
.ltr-style-7:not(.ltr-scope-all) p:first-of-type::first-letter,
.ltr-style-7.ltr-scope-all p::first-letter {
    float:left;font-size:var(--ltr-size);line-height:var(--ltr-line-height);
    margin-right:var(--ltr-margin-r);margin-bottom:2px;font-weight:var(--ltr-weight);
    color:transparent;-webkit-text-stroke:var(--ltr-border-w) var(--ltr-color);
    font-family:var(--ltr-font);}

/* 8 Ombre portée */
.ltr-style-8:not(.ltr-scope-all) p:first-of-type::first-letter,
.ltr-style-8.ltr-scope-all p::first-letter {
    float:left;font-size:var(--ltr-size);line-height:var(--ltr-line-height);
    margin-right:var(--ltr-margin-r);margin-bottom:2px;
    font-weight:var(--ltr-weight);font-family:var(--ltr-font);color:var(--ltr-color);
    text-shadow:4px 4px 0 var(--ltr-shadow-color),6px 6px 14px var(--ltr-shadow-color);
}
/* 9 Fond coloré */
.ltr-style-9:not(.ltr-scope-all) p:first-of-type::first-letter,
.ltr-style-9.ltr-scope-all p::first-letter {
    float:left;font-size:calc(var(--ltr-size)*.75);line-height:1.1;
    margin-right:var(--ltr-margin-r);margin-bottom:2px;padding:var(--ltr-padding);
    background:var(--ltr-bg);color:#fff;font-weight:var(--ltr-weight);border-radius:var(--ltr-border-r);
    font-family:var(--ltr-font);}

/* 10 Géante hero */
.ltr-style-10:not(.ltr-scope-all) p:first-of-type::first-letter,
.ltr-style-10.ltr-scope-all p::first-letter {
    float:left;font-size:calc(var(--ltr-size)*1.65);line-height:0.72;
    margin-right:var(--ltr-margin-r);margin-bottom:0;
    font-weight:var(--ltr-weight);font-family:var(--ltr-font);color:var(--ltr-color);letter-spacing:-4px;
}
/* 11 Glassmorphisme */
.ltr-style-11:not(.ltr-scope-all) p:first-of-type::first-letter,
.ltr-style-11.ltr-scope-all p::first-letter {
    float:left;font-size:calc(var(--ltr-size)*.72);line-height:1.35;
    margin-right:var(--ltr-margin-r);margin-bottom:2px;padding:var(--ltr-padding);
    background:color-mix(in srgb,var(--ltr-bg) 22%,transparent);
    backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
    border:1px solid color-mix(in srgb,var(--ltr-color) 38%,transparent);
    border-radius:10px;color:var(--ltr-color);font-weight:var(--ltr-weight);
    box-shadow:0 4px 18px color-mix(in srgb,var(--ltr-color) 18%,transparent);
    font-family:var(--ltr-font);}

/* 12 Néon */
.ltr-style-12:not(.ltr-scope-all) p:first-of-type::first-letter,
.ltr-style-12.ltr-scope-all p::first-letter {
    float:left;font-size:var(--ltr-size);line-height:var(--ltr-line-height);
    margin-right:var(--ltr-margin-r);margin-bottom:2px;font-weight:var(--ltr-weight);color:var(--ltr-color);
    text-shadow:0 0 6px var(--ltr-color),0 0 14px var(--ltr-color),
                0 0 28px var(--ltr-color),0 0 50px var(--ltr-color2);
    font-family:var(--ltr-font);}

/* 13 3D Emboss */
.ltr-style-13:not(.ltr-scope-all) p:first-of-type::first-letter,
.ltr-style-13.ltr-scope-all p::first-letter {
    float:left;font-size:var(--ltr-size);line-height:var(--ltr-line-height);
    margin-right:var(--ltr-margin-r);margin-bottom:2px;font-weight:var(--ltr-weight);color:var(--ltr-color);
    text-shadow:1px 1px 0 color-mix(in srgb,var(--ltr-color) 60%,#000),
                2px 2px 0 color-mix(in srgb,var(--ltr-color) 50%,#000),
                3px 3px 0 color-mix(in srgb,var(--ltr-color) 40%,#000),
                4px 4px 0 color-mix(in srgb,var(--ltr-color) 30%,#000),
                5px 5px 10px rgba(0,0,0,.28);
    font-family:var(--ltr-font);}

/* 14 Gradient animé */
@property --ltr-angle { syntax:'<angle>';initial-value:0deg;inherits:false; }
@keyframes ltr-spin { to { --ltr-angle:360deg; } }
.ltr-style-14:not(.ltr-scope-all) p:first-of-type::first-letter,
.ltr-style-14.ltr-scope-all p::first-letter {
    float:left;font-size:var(--ltr-size);line-height:var(--ltr-line-height);
    margin-right:var(--ltr-margin-r);margin-bottom:2px;font-weight:var(--ltr-weight);
    background:linear-gradient(var(--ltr-angle),var(--ltr-color),var(--ltr-color2),var(--ltr-color));
    -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
    animation:ltr-spin 3s linear infinite;
    font-family:var(--ltr-font);}

/* 15 Vintage / Timbre */
.ltr-style-15:not(.ltr-scope-all) p:first-of-type::first-letter,
.ltr-style-15.ltr-scope-all p::first-letter {
    float:left;font-size:calc(var(--ltr-size)*.68);line-height:1.15;
    margin-right:var(--ltr-margin-r);margin-bottom:2px;padding:var(--ltr-padding);
    background:color-mix(in srgb,var(--ltr-bg) 12%,transparent);
    color:var(--ltr-color);font-weight:var(--ltr-weight);
    border:var(--ltr-border-w) dashed var(--ltr-color);
    border-radius:var(--ltr-border-r);letter-spacing:3px;text-transform:uppercase;
    font-family:var(--ltr-font);}

/* 16 Doré / Métallique */
.ltr-style-16:not(.ltr-scope-all) p:first-of-type::first-letter,
.ltr-style-16.ltr-scope-all p::first-letter {
    float:left;font-size:var(--ltr-size);line-height:var(--ltr-line-height);
    margin-right:var(--ltr-margin-r);margin-bottom:2px;font-weight:var(--ltr-weight);
    background:linear-gradient(135deg,
        var(--ltr-color) 0%,var(--ltr-color2) 20%,var(--ltr-color) 40%,
        var(--ltr-color2) 60%,var(--ltr-color) 80%,var(--ltr-color2) 100%);
    -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
    filter:drop-shadow(0 1px 2px rgba(0,0,0,.3));
    font-family:var(--ltr-font);}

/* 17 Split couleurs */
.ltr-style-17:not(.ltr-scope-all) p:first-of-type::first-letter,
.ltr-style-17.ltr-scope-all p::first-letter {
    float:left;font-size:var(--ltr-size);line-height:var(--ltr-line-height);
    margin-right:var(--ltr-margin-r);margin-bottom:2px;font-weight:var(--ltr-weight);
    background:linear-gradient(to bottom,var(--ltr-color) 50%,var(--ltr-color2) 50%);
    -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
    font-family:var(--ltr-font);}

/* 18 Aquarelle */
.ltr-style-18:not(.ltr-scope-all) p:first-of-type::first-letter,
.ltr-style-18.ltr-scope-all p::first-letter {
    float:left;font-size:var(--ltr-size);line-height:var(--ltr-line-height);
    margin-right:var(--ltr-margin-r);margin-bottom:2px;font-weight:var(--ltr-weight);
    color:color-mix(in srgb,var(--ltr-color) 90%,transparent);
    text-shadow:-4px -4px 12px color-mix(in srgb,var(--ltr-color) 45%,transparent),
                4px 4px 16px color-mix(in srgb,var(--ltr-color2) 45%,transparent),
                -8px 8px 22px color-mix(in srgb,var(--ltr-color) 30%,transparent),
                8px -8px 22px color-mix(in srgb,var(--ltr-color2) 30%,transparent);
    font-family:var(--ltr-font);}

/* 19 Badge + ombre décalée */
.ltr-style-19:not(.ltr-scope-all) p:first-of-type::first-letter,
.ltr-style-19.ltr-scope-all p::first-letter {
    float:left;font-size:calc(var(--ltr-size)*.82);line-height:1.1;
    margin-right:var(--ltr-margin-r);margin-bottom:2px;padding:var(--ltr-padding);
    background:var(--ltr-bg);color:#fff;font-weight:var(--ltr-weight);border-radius:var(--ltr-border-r);
    box-shadow:3px 3px 0 color-mix(in srgb,var(--ltr-bg) 55%,#000);
    font-family:var(--ltr-font);}

/* 20 Coup de pinceau */
.ltr-style-20:not(.ltr-scope-all) p:first-of-type::first-letter,
.ltr-style-20.ltr-scope-all p::first-letter {
    float:left;font-size:var(--ltr-size);line-height:var(--ltr-line-height);
    margin-right:var(--ltr-margin-r);margin-bottom:4px;font-weight:var(--ltr-weight);
    color:var(--ltr-color);
    border-bottom:calc(var(--ltr-border-w)*3) solid var(--ltr-color2);
    padding-bottom:3px;
    font-family:var(--ltr-font);}

/* Dark mode */
[data-theme="dark"] .ltr-style-11:not(.ltr-scope-all) p:first-of-type::first-letter,
[data-theme="dark"] .ltr-style-11.ltr-scope-all p::first-letter {
    background:color-mix(in srgb,var(--ltr-bg) 18%,transparent);
    font-family:var(--ltr-font);
    font-weight:var(--ltr-weight);}

@media(max-width:576px) {
    :root { --ltr-size:2.8em; }
    .ltr-style-10:not(.ltr-scope-all) p:first-of-type::first-letter,
    .ltr-style-10.ltr-scope-all p::first-letter { font-size:3.8em; 
    font-family:var(--ltr-font);
    font-weight:var(--ltr-weight);}

}
