.film-filter { margin: 20px 0; }
.film-filter input, .film-filter button { padding: 9px; max-width: 100%; box-sizing: border-box; }
.film-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: 24px; margin: 24px 0; }
.film-card { min-width: 0; padding: 14px; border: 1px solid #d1d1d1; border-radius: 8px; background: #fff; }
.film-preview { display: block; width: 100%; aspect-ratio: 16 / 9; background: #151525; object-fit: contain; }
.film-card h2 { font-size: 18px; margin: 14px 0 8px; overflow-wrap: anywhere; }
.film-card p { font-size: 13px; color: #555; }
.film-card a { display: inline-block; padding: 9px 16px; border-radius: 5px; background: #16813a; color: #fff; text-decoration: none; }
.film-card h2 a { display: inline; padding: 0; border-radius: 0; background: none; color: #1b3d65; }
.film-watch { margin-top: 20px; }
.film-watch video { display: block; width: 100%; max-height: 70vh; aspect-ratio: 16 / 9; border-radius: 16px; background: #102b50; }
.film-watch p { margin-top: 20px; }
