
.lsf-section{margin:0}
.lsf-header{margin:0 0 .75rem 0;font-family:var(--lsf-inside-font,inherit)}
.lsf-title-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.lsf-title{margin:0;font-size:var(--lsf-title-size,1.125rem);line-height:1.3}
.lsf-badge{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:999px;font-size:.75rem;letter-spacing:.04em;border:1px solid rgba(0,0,0,.2)}
.lsf-desc{font-size:var(--lsf-body-size,1rem);font-family:var(--lsf-inside-font,inherit)}
.lsf-desc p{margin:.5rem 0 0 0}

.lsf-frame{position:relative;width:100%}
.lsf-frame::before{content:"";display:block;padding-top:calc((var(--lsf-rh,9) / var(--lsf-rw,16))*100%)}
.lsf-player{position:absolute;inset:0;display:block;border-radius:16px;overflow:hidden;background:rgba(0,0,0,.06)}
.lsf-player iframe{width:100%;height:100%;border:0;display:block}

.lsf-poster{position:absolute;inset:0;border:0;padding:0;margin:0;width:100%;height:100%;cursor:pointer;background:transparent;display:flex;align-items:center;justify-content:center}
.lsf-thumb{width:100%;height:100%;object-fit:cover;display:block}
.lsf-play{width:64px;height:64px;border-radius:999px;background:rgba(0,0,0,.65);position:relative;box-shadow:0 8px 30px rgba(0,0,0,.25)}
.lsf-play::before{content:"";position:absolute;left:26px;top:20px;border-style:solid;border-width:12px 0 12px 18px;border-color:transparent transparent transparent rgba(255,255,255,.95)}
.lsf-footer{margin-top:.75rem}
.lsf-cta{display:inline-flex;align-items:center;justify-content:center;padding:.6rem .9rem;border-radius:12px;text-decoration:none;border:1px solid rgba(0,0,0,.2)}

/* Editor helpers */
.lsf-editor-placeholder{padding:1rem;border:1px dashed rgba(0,0,0,.35);border-radius:12px}
.lsf-editor-card{padding:1rem;border:1px solid rgba(0,0,0,.12);border-radius:12px}
.lsf-editor-card__title{font-weight:600}
.lsf-editor-card__hint{margin-top:.25rem;font-size:.85rem;opacity:.75}

.lsf-frame--fixed{height:var(--lsf-frame-height,auto)}
.lsf-frame--fixed::before{padding-top:0}
.lsf-frame--fixed .lsf-player{position:relative;inset:auto;height:100%}
