/* Small, on-demand films. Scoped to preserve the original five-chapter site. */
.sfg-view-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;border-bottom:1px solid var(--line);padding-bottom:10px}
.sfg-switch{display:inline-flex;gap:4px;padding:3px;border:1px solid var(--line);background:var(--theme-surface);border-radius:4px}
.sfg-view{min-height:40px;padding:9px 15px;border:0;border-radius:2px;background:transparent;color:var(--muted);font-size:13px;line-height:1.5;font-weight:500}
.sfg-view[aria-pressed=true]{background:var(--red);color:var(--paper)}
.sfg-view:hover:not([aria-pressed=true]){background:var(--theme-hover);color:var(--ink)}
.sfg-total{font-size:12px;color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}
.sfg-gallery{min-width:0}
.sfg-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
.sfg-intro{margin:0;font-size:13px;color:var(--muted);line-height:1.6}
.sfg-filter{display:block;flex:0 1 250px;min-width:190px}
.sfg-filter select{width:100%;min-height:44px;padding:9px 32px 9px 12px;border:1px solid var(--line);border-radius:3px;background:var(--theme-surface);color:var(--ink);font:inherit;font-size:12px;line-height:1.5}
.sfg-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.sfg-card{display:block;width:100%;min-width:0;padding:0;text-align:start;border:1px solid var(--line);border-radius:4px;background:var(--theme-surface);color:var(--ink);overflow:hidden;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease}
.sfg-card:hover{border-color:var(--red);box-shadow:0 3px 12px #241f1b0d}
.sfg-poster{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:var(--theme-hover)}
.sfg-poster img{display:block;width:100%;height:100%;object-fit:cover;transition:filter .18s ease}
.sfg-card:hover img{filter:brightness(1.06)}
.sfg-badge{position:absolute;inset-block-start:8px;inset-inline-start:8px;max-width:calc(100% - 16px);padding:4px 6px;border-radius:2px;background:#fffdf9ed;color:#40362f;font-size:11px;line-height:1.4;font-weight:500}
.sfg-badge-trident{background:#772936f2;color:#fffdf9}
.sfg-play{position:absolute;inset-inline-end:10px;inset-block-end:10px;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#fffdf9f2;color:#772936;font-size:12px;line-height:1;box-shadow:0 1px 8px #0002}
.sfg-time{position:absolute;inset-inline-start:8px;inset-block-end:10px;color:#fff;background:#292723d9;border-radius:2px;padding:3px 6px;font-size:11px;line-height:1.4;font-variant-numeric:tabular-nums;direction:ltr}
.sfg-card-info{display:block;padding:10px 12px 11px}
.sfg-card-title{display:block;font-size:15px;font-weight:500;line-height:1.4;color:var(--ink)}
.sfg-card-category{display:block;margin-top:4px;font-size:11px;line-height:1.4;color:var(--muted)}
.sfg-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:10px}
.sfg-count{margin:0;color:var(--muted);font-size:12px;line-height:1.5}
.sfg-more{min-height:44px;padding:9px 14px;border:1px solid var(--line);border-radius:3px;background:var(--theme-surface);color:var(--ink);font-size:12px;line-height:1.5}
.sfg-more:hover{border-color:var(--red);background:var(--theme-hover)}
.sfg-note{max-width:1000px;margin:8px 0 0;color:var(--muted);font-size:11px;line-height:1.65}
.sfg-dialog{width:min(820px,calc(100vw - 28px));max-width:none;max-height:calc(100dvh - 28px);margin:auto;padding:0;border:1px solid var(--line);border-radius:5px;background:var(--paper);color:var(--ink);overflow:auto;box-shadow:0 18px 90px #0005}
.sfg-dialog::backdrop{background:#181612d9}
.sfg-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 20px 14px}
.sfg-dialog-label{margin:0 0 5px;font-size:11px;line-height:1.5;color:var(--muted)}
.sfg-dialog-head h2{margin:0;color:var(--ink);font-size:clamp(23px,3vw,30px);line-height:1.2;font-weight:400}
.sfg-close{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;padding:0;background:var(--theme-surface);color:var(--ink);font:300 28px/1 Arial,sans-serif}
.sfg-close:hover{background:var(--theme-hover);border-color:var(--red)}
.sfg-video{display:block;width:100%;height:min(53dvh,470px);min-height:140px;object-fit:contain;background:var(--theme-hover)}
.sfg-dialog-body{padding:14px 20px 18px}
.sfg-description{margin:0 0 12px;font-size:14px;line-height:1.65;color:var(--ink)}
.sfg-error{margin:0 0 12px;color:var(--red);font-size:13px;line-height:1.6}
.sfg-dialog-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px 22px}
.sfg-enquiry{display:inline-flex;align-items:center;min-height:44px;padding:10px 15px;border:1px solid var(--red);border-radius:3px;background:var(--red);color:var(--paper);font-size:13px;line-height:1.5;text-decoration:none}
.sfg-enquiry:hover{filter:brightness(.94)}
.sfg-file{display:inline-flex;align-items:center;min-height:44px;color:var(--ink);font-size:12px;text-decoration:underline;text-underline-offset:4px}
.sfg-credits{margin:12px 0 0;font-size:11px;line-height:1.6;color:var(--muted)}
.sfg-credits a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.sfg-view:focus-visible,.sfg-filter select:focus-visible,.sfg-card:focus-visible,.sfg-more:focus-visible,.sfg-close:focus-visible,.sfg-enquiry:focus-visible,.sfg-file:focus-visible,.sfg-video:focus-visible,.sfg-credits a:focus-visible{outline:2px solid var(--red);outline-offset:3px}
[dir=rtl] .sfg-filter select{padding:9px 12px 9px 32px}
[dir=rtl] .sfg-dialog-head h2{font-family:var(--body);font-size:25px;line-height:1.5}
[dir=rtl] .sfg-card-title{line-height:1.6}
@media(min-width:1200px){.sfg-poster{aspect-ratio:1.94}}
@media(max-width:640px){
 .sfg-view-bar{gap:8px;align-items:center}.sfg-view{padding:9px 11px;font-size:12px}.sfg-total{font-size:11px}
 .sfg-toolbar{align-items:stretch;flex-direction:column;gap:8px;margin-bottom:10px}.sfg-filter{flex:auto;min-width:0}.sfg-intro{font-size:12px}
 .sfg-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sfg-poster{aspect-ratio:4/3}
 .sfg-card-info{padding:9px 10px 10px}.sfg-card-title{font-size:14px}.sfg-card-category{font-size:11px;line-height:1.5}.sfg-badge{font-size:10px;inset-block-start:6px;inset-inline-start:6px;padding:3px 5px;max-width:calc(100% - 12px)}
 .sfg-play{width:31px;height:31px;inset-inline-end:8px;inset-block-end:8px;font-size:11px}.sfg-time{inset-block-end:8px;font-size:10px}
 .sfg-note{font-size:11px;line-height:1.65}.sfg-footer{gap:8px}.sfg-count{font-size:11px}.sfg-more{font-size:11px;padding:9px 10px}
 .sfg-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.sfg-dialog-head{padding:13px 14px;gap:10px}.sfg-dialog-head h2{font-size:23px}.sfg-dialog-label{font-size:10px}
 .sfg-video{height:49dvh;max-height:480px}.sfg-dialog-body{padding:12px 14px 16px}.sfg-description{font-size:13px}.sfg-dialog-actions{gap:8px 16px}
}
@media(max-width:390px){.sfg-total{display:none}.sfg-switch{display:flex;width:100%}.sfg-view{flex:1}.sfg-card-title{font-size:13px}}
@media(max-width:340px){.sfg-grid{grid-template-columns:1fr}.sfg-poster{aspect-ratio:16/9}.sfg-footer{align-items:stretch;flex-direction:column}.sfg-more{width:100%}}
@media(prefers-reduced-motion:reduce){.sfg-card,.sfg-poster img{transition:none}}
