.ksp{--ksp-bg:#101010;--ksp-line:#333;--ksp-text:#f5f5f5;--ksp-muted:#8f8f8f;--ksp-tile:#1e1e1e;box-sizing:border-box;grid-column:1/-1;width:100%;min-width:0;max-width:100%;margin:24px 0;color:var(--ksp-text)}
html[data-theme="light"] .ksp{--ksp-bg:#fff;--ksp-line:#bfd1c7;--ksp-text:#162019;--ksp-muted:#5f6f65;--ksp-tile:#eaf2ed}
.ksp .ksp-heading{margin:0 0 16px;font-size:24px;line-height:1.25;color:var(--ksp-text)}
.ksp .ksp-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;min-width:0;width:100%}
.ksp .ksp-card{position:relative;display:block;min-width:0;max-width:100%;aspect-ratio:2/3;box-sizing:border-box;overflow:hidden;border:1px solid var(--ksp-line);border-radius:8px;background:var(--ksp-tile);color:#f5f5f5;text-decoration:none;isolation:isolate}
.ksp .ksp-card img{display:block;width:100%;height:100%;object-fit:cover;margin:0;max-width:100%}
.ksp .ksp-year{position:absolute;top:9px;left:9px;z-index:2;border-radius:4px;background:#57c77a;color:#07100a;padding:4px 7px;font-size:13px;font-weight:700;line-height:1.2}
.ksp .ksp-caption{position:absolute;inset:auto 0 0;display:flex;flex-direction:column;gap:9px;box-sizing:border-box;padding:46px 10px 11px;background:linear-gradient(transparent,rgba(0,0,0,.82) 48%,rgba(0,0,0,.96));color:#f5f5f5;min-width:0}
.ksp .ksp-title{display:block;font-size:15px;line-height:1.25;font-weight:700;overflow-wrap:anywhere}
.ksp .ksp-ratings{display:flex;justify-content:space-between;gap:5px;flex-wrap:wrap;font-size:12px;line-height:1.3;font-weight:600;min-height:1.3em}.ksp .ksp-imdb{margin-left:auto}
.ksp .ksp-empty .ksp-caption{inset:0;justify-content:flex-end;background:linear-gradient(transparent,rgba(0,0,0,.72));color:var(--ksp-text)}
html[data-theme="light"] .ksp .ksp-empty .ksp-caption{background:linear-gradient(transparent,rgba(234,242,237,.96))}
.ksp .ksp-card:hover{border-color:#57c77a}.ksp .ksp-card:focus-visible{outline:3px solid #57c77a;outline-offset:2px}
@media(max-width:1100px){.ksp .ksp-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.ksp .ksp-card:nth-child(n+5){display:none}}
@media(max-width:820px){.ksp .ksp-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ksp .ksp-card:nth-child(4){display:none}}
@media(max-width:700px){.ksp .ksp-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ksp .ksp-card:nth-child(4){display:block}.ksp .ksp-heading{font-size:21px}.ksp .ksp-title{font-size:14px}}
