/* Contextual editorial components. Scoped to source-owned pages and docs. */
.sf-editorial .sf-task-path{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px;margin:24px 0 36px}
.sf-editorial .sf-task-link{display:flex;flex-direction:column;gap:8px;padding:20px;border:1px solid var(--line);border-radius:8px;background:var(--surface);text-decoration:none;min-width:0;overflow-wrap:anywhere}
.sf-editorial .sf-task-link strong{font-size:18px;line-height:1.4}
.sf-editorial .sf-task-link>span{color:var(--muted);font-size:15px;line-height:1.6}
.sf-editorial .sf-task-link:hover{border-color:var(--accent)}
.sf-editorial .sf-task-link:hover strong{text-decoration:underline;text-underline-offset:4px}
.sf-editorial .sf-proof{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:48px;align-items:center}
.sf-editorial .sf-proof-copy{max-width:560px}
.sf-editorial .sf-proof-copy h2{font-size:clamp(30px,3.2vw,44px);line-height:1.15}
.sf-editorial .sf-proof-detail{margin:0;max-width:540px;justify-self:end}
.sf-editorial .sf-proof-detail img{width:100%;height:auto;border:1px solid var(--line);border-radius:8px;background:var(--surface)}
.sf-editorial .sf-proof-detail figcaption{font-size:14px;line-height:1.6;color:var(--muted);padding:12px 0}
.sf-editorial .sf-film{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:40px;align-items:center;padding:32px;background:var(--soft);color:var(--ink);border-radius:12px}
.sf-editorial .sf-film h2{font-size:clamp(28px,3vw,40px);line-height:1.2;margin:12px 0}
.sf-editorial .sf-film p{max-width:50ch;color:inherit}
.sf-editorial .sf-film .eyebrow{color:var(--ink)}
.sf-editorial .sf-film a:hover{color:var(--ink)}
.sf-editorial .sf-film a:focus-visible{outline-color:var(--ink)}
.sf-editorial .sf-film-teaser{display:block;background:var(--surface);border:1px solid var(--line);border-radius:8px;overflow:hidden;text-decoration:none}
.sf-editorial .sf-film-teaser img{width:100%;aspect-ratio:16/9;object-fit:cover}
.sf-editorial .sf-film-teaser>span{display:flex;justify-content:space-between;gap:12px;padding:14px 18px;font-weight:650}
.sf-editorial .sf-result-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin:24px 0}
.sf-editorial .sf-result-list>div{padding:18px 0;border-top:1px solid var(--line);min-width:0}
.sf-editorial .sf-result-list dt{font-size:14px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:650;margin-bottom:8px}
.sf-editorial .sf-result-list dd{margin:0;overflow-wrap:anywhere}
.sf-editorial .sf-decision-note,.sf-editorial .sf-doc-prerequisite{padding:18px 20px;background:var(--soft);border-left:3px solid var(--accent);border-radius:0 6px 6px 0}
.sf-editorial .sf-doc-next{margin-top:40px;padding-top:24px;border-top:1px solid var(--line)}
.sf-editorial .sf-doc-next h2{font-size:24px;margin-top:0}
.sf-editorial .sf-doc-next .sf-task-path{margin-bottom:0}
@media(max-width:760px){.sf-editorial .sf-proof,.sf-editorial .sf-film{grid-template-columns:minmax(0,1fr);gap:24px}.sf-editorial .sf-proof-detail{justify-self:start;max-width:540px}.sf-editorial .sf-film{padding:24px}.sf-editorial .sf-result-list{grid-template-columns:minmax(0,1fr)}}
@media(max-width:390px){.sf-editorial .sf-film{padding:18px}.sf-editorial .sf-task-link{padding:16px}}
.sf-editorial .card .sf-plan-status{font-size:14px;line-height:1.55;margin:14px 0 0;color:var(--muted)}
.sf-editorial .sf-checkout-retry{margin-top:12px;padding:10px 12px;border:1px solid var(--accent);border-radius:5px;color:var(--accent);background:var(--surface)}
.sf-editorial .sf-capture-link{padding:18px 20px;border:1px solid var(--line);border-radius:8px;max-width:76ch;background:var(--surface)}
.sf-editorial .sf-capture-link>span{display:block;margin-top:8px;color:var(--muted);font-size:15px}
.sf-editorial .sf-review-proof{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:36px;align-items:center;margin:28px 0}
.sf-editorial .sf-review-proof .sf-proof-detail{max-width:500px;justify-self:start}
@media(max-width:760px){.sf-editorial .sf-review-proof{grid-template-columns:minmax(0,1fr);gap:20px}}
/* Grid items must shrink with the viewport, including image fallbacks/no-JS. */
.sf-editorial .hero>*,.sf-editorial .proof-row>*,.sf-editorial .sf-proof>*,.sf-editorial .sf-review-proof>*{min-width:0}
.sf-editorial .sf-proof-detail{width:100%;max-width:540px}
.sf-editorial .sf-proof-detail>a{display:block;max-width:100%}
