/* Общий стиль: красный/чёрный/белый */
:root{ --dk-red:#e10600; --dk-bg:#1a1a1a; --dk-text:#f2f2f2; }
body.single-movie, body.post-type-archive-movie { background:#0e0e0e; color:var(--dk-text); }
.dkm-wrap{ max-width:1200px; margin:0 auto; padding:24px; }

.dkm-hero{
  position:relative; border-radius:14px; overflow:hidden; margin-bottom:24px;
  background:#000;
}
.dkm-hero__bg{
  position:absolute; inset:0; background-size:cover; background-position:center;
  filter:brightness(.5);
}
.dkm-hero__inner{ position:relative; display:flex; gap:24px; padding:32px; align-items:flex-end; }
.dkm-hero__poster img{ width:220px; height:auto; border-radius:10px; box-shadow:0 10px 30px rgba(0,0,0,.5); }
.dkm-hero__meta{ max-width:800px; }
.dkm-title{ font-size:42px; line-height:1.1; margin:0 0 8px; }
.dkm-sub{ opacity:.8; margin-bottom:16px; }
.dkm-tags{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:12px; }
.dkm-tag{ background:rgba(255,255,255,.08); padding:6px 10px; border-radius:20px; font-size:12px; }
.dkm-btn{ display:inline-block; background:var(--dk-red); color:#fff; border:none; padding:10px 16px; border-radius:8px; cursor:pointer; text-decoration:none; }
.dkm-btn:hover{ filter:brightness(1.1); }

/* Трейлер + описание */
.dkm-grid-2{ display:grid; grid-template-columns:1.5fr 1fr; gap:24px; }
.dkm-panel{ background:#121212; border-radius:12px; padding:16px; }
.dkm-h3{ margin:0 0 12px; font-size:20px; }

/* Сетка карточек (архив, шорткод) */
.dkm-section{ margin:28px 0; }
.dkm-h2{ margin:0 0 12px; border-left:6px solid var(--dk-red); padding-left:10px; }
.dkm-grid{ display:grid; gap:16px; grid-template-columns:repeat(auto-fill,minmax(160px,1fr)); }
.dkm-card{ background:#121212; border-radius:10px; overflow:hidden; text-decoration:none; color:var(--dk-text); transition:transform .15s; }
.dkm-card:hover{ transform:translateY(-3px); }
.dkm-card__img img{ width:100%; height:auto; display:block; }
.dkm-card__title{ padding:10px; font-size:14px; }

/* Поиск */
.dkm-search{ display:flex; gap:8px; margin:10px 0 20px; }
.dkm-search__input{ flex:1; background:#121212; color:#fff; border:1px solid #222; border-radius:8px; padding:10px 12px; }
