/* ⚠️ Classes NEUTRES (audit 2026-10-07) — ex-`*-promo*`. Ces conteneurs
   enveloppent de VRAIES créatives (iframe verysexytoy, carrousel, bloc
   « Liens sponsorisés » noxcom). `promo` figure dans certaines listes de
   filtres cosmétiques → conteneur masqué = impression perdue en silence.
   Décision de Tom le 2026-10-07 : renommer par précaution.
   Ne JAMAIS utiliser un nom contenant ad / ads / advert / banner /
   sponsor / pub / publicite / promo, ni en préfixe NI en suffixe. */
/* =====================================================================
   LesPag.com — thème « Annuaire réinventé » (refonte 2026-07-27)
   Univers répertoire / place du marché : moutarde, noir d'encre, crème chic.
   Signature : pouce-index alphabétique latéral (onglets A-Z) + encarts
   d'annonces numérotés (entrées de répertoire). Zéro Bootstrap / FontAwesome /
   jQuery / fonts CDN (100 % system fonts + SVG inline). Namespace .lp- .
   Chargé via header.php (cache-bust filemtime).
   ===================================================================== */

:root{
  --lp-mustard:  #C8921B;   /* moutarde profonde */
  --lp-mustard-d:#A6780F;
  --lp-mustard-l:#E7B93E;
  --lp-cream:    #F5EFE0;    /* page */
  --lp-paper:    #FBF7EC;    /* cartes */
  --lp-ink:      #1B1712;    /* noir d'encre */
  --lp-ink-2:    #2C2519;
  --lp-ink-soft: #5A513E;
  --lp-muted:    #8C8168;
  --lp-line:     #E2D7BE;
  --lp-line-d:   #D2C39F;
  --lp-oxblood:  #8A2C1F;    /* accent chaud secondaire (prix, alerte) */
  --lp-radius:   4px;        /* angles nets = chic éditorial */
  --lp-ease:     cubic-bezier(.2,.8,.2,1);
  --lp-serif:    'Iowan Old Style','Palatino Linotype',Palatino,'Book Antiqua',Georgia,'Times New Roman',serif;
  --lp-sans:     system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
}

*{ -webkit-tap-highlight-color:transparent; box-sizing:border-box; }
html{ scroll-behavior:smooth; }
html,body{ margin:0; background-color:var(--lp-cream); }
body{
  font-family:var(--lp-sans);
  color:var(--lp-ink); font-size:16px; line-height:1.55;
  padding-bottom:80px;
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
}
@media (min-width:992px){ body{ padding-bottom:0; } }

h1,h2,h3,h4{ font-family:var(--lp-serif); font-weight:700; color:var(--lp-ink); margin:0; line-height:1.12; }
a{ color:var(--lp-ink); text-decoration:none; }
a:hover{ color:var(--lp-mustard-d); }
img{ max-width:100%; }
.lp-ico{ width:1em; height:1em; display:inline-block; vertical-align:-.14em; flex:none; }

.lp-wrap{ max-width:1180px; margin:0 auto; padding:0 18px; }

/* ---------- Topbar : bandeau d'encre + filet moutarde ---------- */
.lp-top{ position:sticky; top:0; z-index:40; background:var(--lp-ink); color:var(--lp-cream); border-bottom:3px solid var(--lp-mustard); }
.lp-top-in{ max-width:1180px; margin:0 auto; display:flex; align-items:center; gap:14px; padding:11px 18px; }
.lp-brand{ display:flex; align-items:center; gap:11px; color:var(--lp-cream); }
.lp-brand:hover{ color:var(--lp-cream); }
.lp-mark{ width:40px; height:40px; flex:none; display:grid; place-items:center; background:var(--lp-mustard); color:var(--lp-ink); border-radius:var(--lp-radius); font-family:var(--lp-serif); }
.lp-mark .lp-ico{ font-size:1.35rem; }
.lp-brand-name{ font-family:var(--lp-serif); font-weight:700; font-size:1.4rem; letter-spacing:.01em; line-height:.95; color:var(--lp-cream); }
.lp-brand-name b{ color:var(--lp-mustard-l); font-weight:700; }
.lp-brand-sub{ display:block; margin-top:1px; font-size:.66rem; letter-spacing:.22em; text-transform:uppercase; color:var(--lp-muted); }

.lp-nav{ display:none; margin-left:auto; align-items:center; gap:1.4rem; }
@media (min-width:992px){ .lp-nav{ display:flex; } }
.lp-nav a{ color:var(--lp-cream); font-weight:600; font-size:.9rem; letter-spacing:.02em; position:relative; padding:.35rem 0; }
.lp-nav a::after{ content:""; position:absolute; left:0; right:0; bottom:-2px; height:2px; background:var(--lp-mustard); transform:scaleX(0); transform-origin:left; transition:transform .22s var(--lp-ease); }
.lp-nav a:hover{ color:var(--lp-mustard-l); }
.lp-nav a:hover::after{ transform:scaleX(1); }
.lp-cta{ display:inline-flex; align-items:center; gap:.4rem; background:var(--lp-mustard); color:var(--lp-ink) !important; padding:.5rem 1rem; border-radius:var(--lp-radius); font-weight:700; font-size:.86rem; transition:background .15s var(--lp-ease); }
.lp-cta:hover{ background:var(--lp-mustard-l); }
.lp-cta::after{ display:none !important; }

.lp-burger{ margin-left:auto; width:42px; height:42px; flex:none; border:1px solid var(--lp-mustard); border-radius:var(--lp-radius); background:transparent; color:var(--lp-cream); display:grid; place-items:center; cursor:pointer; }
.lp-burger .lp-ico{ font-size:1.3rem; }
@media (min-width:992px){ .lp-burger{ display:none; } }

/* Drawer CSS-only */
#lp-drawer-cb{ position:absolute; left:-9999px; opacity:0; }
.lp-scrim{ position:fixed; inset:0; z-index:50; background:rgba(27,23,18,.55); opacity:0; visibility:hidden; transition:opacity .25s var(--lp-ease),visibility .25s var(--lp-ease); }
.lp-drawer{ position:fixed; top:0; right:0; bottom:0; z-index:51; width:min(84vw,320px); background:var(--lp-paper); border-left:4px solid var(--lp-mustard); transform:translateX(100%); transition:transform .3s var(--lp-ease); display:flex; flex-direction:column; }
#lp-drawer-cb:checked ~ .lp-scrim{ opacity:1; visibility:visible; }
#lp-drawer-cb:checked ~ .lp-drawer{ transform:translateX(0); }
.lp-drawer-head{ display:flex; align-items:center; justify-content:space-between; padding:1rem 1.25rem; background:var(--lp-ink); color:var(--lp-cream); }
.lp-drawer-head b{ font-family:var(--lp-serif); font-size:1.15rem; letter-spacing:.04em; }
.lp-drawer-x{ width:38px; height:38px; border:1px solid var(--lp-mustard); border-radius:var(--lp-radius); background:transparent; color:var(--lp-cream); display:grid; place-items:center; cursor:pointer; }
.lp-mlink{ display:flex; align-items:center; gap:.8rem; padding:.9rem 1.25rem; color:var(--lp-ink); font-weight:600; border-bottom:1px solid var(--lp-line); }
.lp-mlink .lp-idx{ font-family:var(--lp-serif); font-size:.82rem; color:var(--lp-mustard-d); width:1.4em; text-align:center; }
.lp-mlink .lp-ico{ color:var(--lp-mustard-d); font-size:1.1rem; }
.lp-mlink:hover{ background:var(--lp-cream); color:var(--lp-mustard-d); }
.lp-drawer-cta{ margin:1rem 1.25rem; padding:.85rem; background:var(--lp-mustard); color:var(--lp-ink); border-radius:var(--lp-radius); text-align:center; font-weight:700; }
.lp-drawer-cta:hover{ color:var(--lp-ink); background:var(--lp-mustard-l); }

/* ---------- Fil d'Ariane ---------- */
.lp-breadcrumb{ margin:16px 0 0; font-size:.82rem; color:var(--lp-ink-soft); }
.lp-breadcrumb ol{ list-style:none; display:flex; flex-wrap:wrap; align-items:center; gap:.1rem .45rem; margin:0; padding:0; }
.lp-breadcrumb li{ display:inline-flex; align-items:center; }
.lp-breadcrumb li + li::before{ content:"›"; margin:0 .35rem; color:var(--lp-mustard-d); }
.lp-breadcrumb a{ color:var(--lp-ink-soft); }
.lp-breadcrumb a:hover{ color:var(--lp-mustard-d); }
.lp-breadcrumb [aria-current="page"]{ color:var(--lp-ink); font-weight:700; }

/* ---------- Hero : couverture d'annuaire + pouce-index A-Z ---------- */
.lp-hero{ position:relative; margin:20px 0 6px; background:var(--lp-paper); border:1px solid var(--lp-line-d); border-radius:var(--lp-radius); overflow:hidden; }
.lp-hero-in{ padding:34px 22px 30px; max-width:760px; }
.lp-eyebrow{ display:inline-flex; align-items:center; gap:.5rem; font-size:.7rem; letter-spacing:.25em; text-transform:uppercase; color:var(--lp-mustard-d); font-weight:700; }
.lp-eyebrow::before{ content:""; width:26px; height:2px; background:var(--lp-mustard); }
.lp-hero h1{ font-size:clamp(1.9rem,5.4vw,3rem); margin:.5rem 0 0; letter-spacing:-.01em; }
.lp-hero h1 em{ font-style:italic; color:var(--lp-mustard-d); }
.lp-hero p{ margin:.7rem 0 0; color:var(--lp-ink-soft); font-size:1.03rem; max-width:52ch; }

/* Pouce-index alphabétique (rail latéral droit, desktop) */
.lp-index-rail{ position:absolute; top:0; right:0; bottom:0; width:44px; display:none; flex-direction:column; background:var(--lp-ink); }
@media (min-width:820px){ .lp-index-rail{ display:flex; } .lp-hero-in{ padding-right:70px; } }
.lp-index-rail span{ flex:1; display:grid; place-items:center; color:var(--lp-cream); font-family:var(--lp-serif); font-size:.72rem; font-weight:700; border-bottom:1px solid rgba(200,146,27,.28); }
.lp-index-rail span:nth-child(3n){ background:var(--lp-mustard); color:var(--lp-ink); }

/* Barre de recherche « consulter l'annuaire » */
.lp-searchbar{ margin:16px 0 0; }
.lp-search{ display:flex; gap:0; background:var(--lp-paper); border:1.5px solid var(--lp-ink); border-radius:var(--lp-radius); overflow:hidden; max-width:640px; }
.lp-search .lp-search-ico{ display:grid; place-items:center; padding:0 .4rem 0 .85rem; color:var(--lp-mustard-d); }
.lp-search input{ flex:1; min-width:0; border:0; outline:0; background:transparent; font-family:inherit; font-size:1rem; color:var(--lp-ink); padding:.75rem .5rem; }
.lp-search input::placeholder{ color:var(--lp-muted); }
.lp-search button{ border:0; cursor:pointer; background:var(--lp-mustard); color:var(--lp-ink); font-family:inherit; font-weight:700; font-size:.92rem; padding:.5rem 1.25rem; }
.lp-search button:hover{ background:var(--lp-mustard-l); }

/* ---------- Rubriques : le sommaire numéroté ---------- */
.lp-rubriques{ margin:34px 0 6px; }
.lp-sec-head{ display:flex; align-items:baseline; gap:.6rem; border-bottom:2px solid var(--lp-ink); padding-bottom:.4rem; margin-bottom:16px; }
.lp-sec-head h2{ font-size:1.35rem; }
.lp-sec-head .lp-sec-note{ margin-left:auto; font-size:.72rem; letter-spacing:.18em; text-transform:uppercase; color:var(--lp-muted); }
.lp-rub-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:var(--lp-line-d); border:1px solid var(--lp-line-d); border-radius:var(--lp-radius); overflow:hidden; }
@media (min-width:620px){ .lp-rub-grid{ grid-template-columns:repeat(4,1fr); } }
.lp-rub{ position:relative; display:flex; flex-direction:column; gap:.4rem; padding:16px 14px 15px; background:var(--lp-paper); color:var(--lp-ink); transition:background .15s var(--lp-ease); }
.lp-rub:hover{ background:var(--lp-cream); color:var(--lp-mustard-d); }
.lp-rub-num{ font-family:var(--lp-serif); font-size:.78rem; color:var(--lp-mustard-d); font-weight:700; }
.lp-rub .lp-ico{ font-size:1.55rem; color:var(--lp-ink); }
.lp-rub:hover .lp-ico{ color:var(--lp-mustard-d); }
.lp-rub-label{ font-weight:600; font-size:.92rem; }

/* ---------- Listing : entrées d'annuaire numérotées ---------- */
.lp-listing{ margin:26px 0 6px; }
.lp-listing-head{ display:flex; align-items:baseline; gap:.7rem; border-bottom:2px solid var(--lp-ink); padding-bottom:.4rem; margin-bottom:18px; }
.lp-listing-head h1{ font-size:clamp(1.3rem,3.6vw,1.75rem); }
.lp-listing-head .lp-count{ font-family:var(--lp-serif); color:var(--lp-mustard-d); }
.lp-listing-head .lp-page-pill{ margin-left:auto; font-size:.74rem; letter-spacing:.14em; text-transform:uppercase; color:var(--lp-muted); }

.lp-entries{ display:grid; grid-template-columns:1fr 1fr; gap:16px 14px; }
@media (min-width:640px){ .lp-entries{ grid-template-columns:repeat(3,1fr); } }
@media (min-width:980px){ .lp-entries{ grid-template-columns:repeat(4,1fr); gap:20px 16px; } }
.lp-entry{ position:relative; display:block; background:var(--lp-paper); border:1px solid var(--lp-line-d); border-left:4px solid var(--lp-mustard); border-radius:var(--lp-radius); overflow:hidden; color:var(--lp-ink); transition:transform .14s var(--lp-ease),box-shadow .14s var(--lp-ease),border-color .14s var(--lp-ease); }
.lp-entry:hover{ transform:translateY(-3px); box-shadow:0 8px 22px rgba(27,23,18,.12); border-left-color:var(--lp-ink); color:var(--lp-ink); }
.lp-entry-num{ position:absolute; top:0; left:0; z-index:2; background:var(--lp-ink); color:var(--lp-cream); font-family:var(--lp-serif); font-size:.72rem; font-weight:700; letter-spacing:.03em; padding:3px 9px; border-bottom-right-radius:var(--lp-radius); }
.lp-entry-photo{ aspect-ratio:1/1; background:var(--lp-cream); background-size:cover; background-position:center; position:relative; }
.lp-entry-photo.empty{ background-image:repeating-linear-gradient(45deg,#efe7d0 0 10px,#f6f0e2 10px 20px); display:grid; place-items:center; }
.lp-entry-photo.empty small{ font-size:.78rem; color:var(--lp-muted); font-style:italic; }
.lp-price{ position:absolute; bottom:8px; right:8px; background:var(--lp-mustard); color:var(--lp-ink); font-family:var(--lp-serif); font-weight:700; font-size:.95rem; padding:2px 10px; border-radius:var(--lp-radius); }
.lp-entry-body{ padding:11px 12px 13px; }
.lp-entry-title{ font-weight:600; font-size:.9rem; line-height:1.3; margin:0; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; min-height:2.35em; }
.lp-entry-loc{ margin:7px 0 0; font-size:.76rem; color:var(--lp-ink-soft); display:flex; align-items:center; gap:5px; }
.lp-entry-loc .lp-ico{ color:var(--lp-mustard-d); }

/* ---------- Pagination ---------- */
.lp-pagination{ display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:.35rem; margin:2.25rem 0 .5rem; }
.lp-pagination a,.lp-pagination span{ min-width:42px; height:42px; display:inline-flex; align-items:center; justify-content:center; padding:0 .9rem; border-radius:var(--lp-radius); font-family:var(--lp-serif); font-weight:700; font-size:.95rem; color:var(--lp-ink); background:var(--lp-paper); border:1px solid var(--lp-line-d); }
.lp-pagination a:hover{ border-color:var(--lp-mustard); color:var(--lp-mustard-d); }
.lp-pagination .active{ background:var(--lp-ink); color:var(--lp-cream); border-color:var(--lp-ink); }

/* ---------- État vide ---------- */
.lp-empty{ text-align:center; padding:3rem 1rem; background:var(--lp-paper); border:1px dashed var(--lp-line-d); border-radius:var(--lp-radius); max-width:520px; margin:1rem auto; }
.lp-empty strong{ display:block; font-family:var(--lp-serif); font-size:1.25rem; color:var(--lp-mustard-d); margin-bottom:.5rem; }
.lp-empty a{ display:inline-block; margin-top:1rem; background:var(--lp-ink); color:var(--lp-cream); padding:.6rem 1.2rem; border-radius:var(--lp-radius); font-weight:700; }
.lp-empty a:hover{ background:var(--lp-mustard-d); color:var(--lp-ink); }

/* ---------- Blocs promo (pubs) ---------- */
.lp-slot{ text-align:center; margin:1.75rem auto; max-width:640px; }
.lp-slot h6{ font-size:.7rem; letter-spacing:.18em; text-transform:uppercase; color:var(--lp-muted); margin:0 0 .6rem; }
.lp-slot iframe{ border:0; max-width:100%; }
.lp-slot img{ border-radius:var(--lp-radius); }
.lp-slot .lp-small{ font-size:.82rem; color:var(--lp-ink-soft); margin-top:.25rem; }
.lp-slot-links a{ display:inline-block; margin:0 .75rem; vertical-align:top; }

/* ---------- Footer : colophon ---------- */
.lp-footer{ margin-top:3rem; background:var(--lp-ink); color:rgba(245,239,224,.78); padding:2.5rem 0 2rem; position:relative; }
.lp-footer::before{ content:""; position:absolute; top:0; left:0; right:0; height:3px; background:var(--lp-mustard); }
.lp-foot-grid{ display:grid; gap:1.75rem; grid-template-columns:1fr; }
@media (min-width:560px){ .lp-foot-grid{ grid-template-columns:1.3fr 1fr 1fr; } }
.lp-footer h5{ font-family:var(--lp-serif); color:var(--lp-cream); font-size:1.05rem; letter-spacing:.02em; margin:0 0 .7rem; }
.lp-footer ul{ list-style:none; margin:0; padding:0; }
.lp-footer li{ margin-bottom:.45rem; }
.lp-footer a{ color:rgba(245,239,224,.78); font-size:.9rem; }
.lp-footer a:hover{ color:var(--lp-mustard-l); }
.lp-foot-brand{ display:flex; align-items:center; gap:10px; color:var(--lp-cream); }
.lp-foot-brand:hover{ color:var(--lp-cream); }
.lp-foot-tag{ font-size:.9rem; color:rgba(245,239,224,.68); margin:.7rem 0 0; max-width:34ch; }
.lp-foot-bottom{ border-top:1px solid rgba(245,239,224,.14); margin-top:2rem; padding-top:1rem; font-size:.82rem; color:rgba(245,239,224,.6); }

/* ---------- Dock mobile ---------- */
.lp-dock{ position:fixed; left:0; right:0; bottom:0; background:var(--lp-ink); border-top:3px solid var(--lp-mustard); display:grid; grid-template-columns:repeat(4,1fr); padding:8px 4px calc(8px + env(safe-area-inset-bottom)); z-index:30; }
@media (min-width:992px){ .lp-dock{ display:none; } }
.lp-dock a{ display:flex; flex-direction:column; align-items:center; gap:3px; color:rgba(245,239,224,.7); font-size:.64rem; font-weight:600; }
.lp-dock a .lp-ico{ font-size:1.3rem; }
.lp-dock a[aria-current="page"]{ color:var(--lp-mustard-l); }
.lp-dock a.lp-dock-cta .lp-ico{ background:var(--lp-mustard); color:var(--lp-ink); width:42px; height:42px; padding:10px; border-radius:var(--lp-radius); margin-top:-14px; }
.lp-dock a.lp-dock-cta span{ color:var(--lp-mustard-l); }

/* ---------- Fiche détail ---------- */
.lp-detail{ margin:8px 0 0; }
.lp-detail-grid{ display:grid; gap:22px; grid-template-columns:1fr; }
@media (min-width:900px){ .lp-detail-grid{ grid-template-columns:1.25fr 1fr; align-items:start; } }
.lp-gallery{ background:var(--lp-paper); border:1px solid var(--lp-line-d); border-radius:var(--lp-radius); overflow:hidden; }
.lp-gallery-main{ display:block; aspect-ratio:4/3; background:var(--lp-cream); background-size:cover; background-position:center; }
.lp-gallery-main.empty{ background-image:repeating-linear-gradient(45deg,#efe7d0 0 12px,#f6f0e2 12px 24px); }
.lp-gallery-thumbs{ display:flex; gap:8px; padding:10px; flex-wrap:wrap; }
.lp-gallery-thumbs a{ width:64px; height:64px; border-radius:var(--lp-radius); border:1px solid var(--lp-line-d); background-size:cover; background-position:center; }
.lp-panel{ background:var(--lp-paper); border:1px solid var(--lp-line-d); border-radius:var(--lp-radius); padding:20px; }
.lp-panel + .lp-panel{ margin-top:18px; }
.lp-detail h1{ font-size:clamp(1.4rem,4vw,2rem); }
.lp-detail-price{ display:inline-block; margin:12px 0; font-family:var(--lp-serif); font-weight:700; font-size:1.7rem; color:var(--lp-ink); background:var(--lp-mustard); padding:5px 18px; border-radius:var(--lp-radius); }
.lp-detail-meta{ display:flex; flex-wrap:wrap; gap:.5rem 1.2rem; margin:6px 0 16px; color:var(--lp-ink-soft); font-size:.88rem; }
.lp-detail-meta span{ display:inline-flex; align-items:center; gap:.35rem; }
.lp-detail-meta .lp-ico{ color:var(--lp-mustard-d); }
.lp-badge-pro{ background:var(--lp-oxblood); color:#fff; border-radius:var(--lp-radius); padding:1px 9px; font-weight:700; font-size:.78rem; }
.lp-specs{ margin:16px 0 4px; border-top:1px solid var(--lp-line); padding-top:14px; display:grid; grid-template-columns:auto 1fr; gap:7px 16px; }
.lp-specs dt{ font-size:.85rem; color:var(--lp-ink-soft); letter-spacing:.01em; }
.lp-specs dd{ margin:0; font-weight:600; font-size:.9rem; }
.lp-section-h{ font-family:var(--lp-serif); font-size:1.15rem; color:var(--lp-ink); border-bottom:2px solid var(--lp-mustard); padding-bottom:.35rem; margin:1.5rem 0 .9rem; }
.lp-detail-desc{ color:var(--lp-ink); line-height:1.7; white-space:pre-line; }
.lp-tags{ margin-top:14px; display:flex; flex-wrap:wrap; gap:6px; }
.lp-tag{ font-size:.82rem; background:var(--lp-cream); border:1px solid var(--lp-line-d); border-radius:var(--lp-radius); padding:2px 10px; color:var(--lp-ink-soft); }

.lp-cta-list{ display:flex; flex-direction:column; gap:10px; margin-top:18px; }
.lp-btn{ display:inline-flex; align-items:center; justify-content:center; gap:.5rem; width:100%; border:0; cursor:pointer; font-family:inherit; font-weight:700; font-size:1rem; padding:.8rem 1.2rem; border-radius:var(--lp-radius); }
.lp-btn-primary{ background:var(--lp-mustard); color:var(--lp-ink); }
.lp-btn-primary:hover{ background:var(--lp-mustard-l); color:var(--lp-ink); }
.lp-btn-ink{ background:var(--lp-ink); color:var(--lp-cream); }
.lp-btn-ink:hover{ background:var(--lp-ink-2); color:var(--lp-cream); }
.lp-disclosure summary{ list-style:none; cursor:pointer; }
.lp-disclosure summary::-webkit-details-marker{ display:none; }
.lp-msg-cta{ display:inline-flex; align-items:center; gap:.5rem; margin-bottom:.5rem; color:var(--lp-ink); font-weight:600; }
.lp-msg-cta:hover{ color:var(--lp-mustard-d); }

/* ---------- Petits templates (account / saisie / conditions / contact) ---------- */
.lp-page{ margin:22px 0 8px; }
.lp-page h1{ font-size:clamp(1.4rem,3.6vw,1.9rem); border-bottom:2px solid var(--lp-ink); padding-bottom:.4rem; margin-bottom:.6rem; }
.lp-page .lp-lead{ color:var(--lp-ink-soft); margin:0 0 1rem; }
.lp-frame{ width:100%; border:1px solid var(--lp-line-d); border-radius:var(--lp-radius); background:var(--lp-paper); }
.lp-prose{ background:var(--lp-paper); border:1px solid var(--lp-line-d); border-radius:var(--lp-radius); padding:20px; line-height:1.7; }

@media (prefers-reduced-motion:reduce){ *{ transition:none !important; scroll-behavior:auto !important; } }
