/* DESIGN V2 (4/4): нижний плеер */
@media (min-width: 901px) {
  /* ── Player ── */
  .dv2-pl-left { display: flex; align-items: center; gap: 12px; width: 26%; min-width: 200px; }
  .dv2-pl-cover { width: 54px; height: 54px; flex: 0 0 54px; border-radius: 11px; overflow: hidden; background: #1a1a24; color: rgba(255,255,255,.5); display: inline-flex; align-items: center; justify-content: center; }
  .dv2-pl-cover img { width: 100%; height: 100%; object-fit: cover; }
  .dv2-eq { display: inline-flex; align-items: flex-end; gap: 2px; height: 16px; }
  .dv2-eq i { width: 3px; height: 6px; border-radius: 2px; background: #7c6cf5; }
  .dv2-eq.on i { animation: dv2eqb .9s ease-in-out infinite; }
  .dv2-eq.on i:nth-child(2) { animation-delay: .2s; }
  .dv2-eq.on i:nth-child(3) { animation-delay: .45s; }
  @keyframes dv2eqb { 0%,100% { height: 5px; } 50% { height: 15px; } }
  .dv2-pl-main { min-width: 0; display: flex; flex-direction: column; }
  .dv2-pl-main b { font-size: 14px; font-weight: 600; color: #f2f2f6; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .dv2-pl-main i { font-style: normal; font-size: 12px; color: #82828f; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .dv2-pl-attr { font-style: normal; font-size: 11px; color: #66666f; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin-top: 1px; }
  /* Кнопки трека в мини-плеере (те же, что на карточках) — 2 ряда по 3, ровные колонки (grid).
     margin-left:auto прижимает блок вправо (к громкости), заполняя пустую зону справа. */
  .dv2-pl-actions { flex: 0 0 auto; margin-left: auto; display: grid; grid-template-columns: repeat(3, auto); grid-auto-rows: 30px; gap: 6px 8px; align-items: center; justify-items: center; }
  .dv2-pl-actions[hidden] { display: none; }
  .dv2-pl-actions .dv2-mact { width: 30px; height: 30px; border-color: rgba(255,255,255,.18); background: rgba(255,255,255,.035); }
  .dv2-pl-actions .dv2-mact:hover { border-color: rgba(255,255,255,.32); background: rgba(255,255,255,.08); }
  .dv2-pl-actions .dv2-mact.dv2-mact-count { width: auto; min-width: 30px; padding: 0 8px; }
  .dv2-pl-like { border: 0; background: none; color: #7c7c88; cursor: pointer; padding: 6px; }
  .dv2-pl-like.on { color: #7c6cf5; }
  .dv2-pl-center { flex: 1; max-width: 560px; margin: 0 auto; display: flex; flex-direction: column; align-items: center; gap: 4px; }
  .dv2-pl-controls { display: flex; align-items: center; gap: 16px; }
  .dv2-pl-controls button { border: 0; background: none; color: #b9b9c4; cursor: pointer; padding: 4px; display: inline-flex; }
  .dv2-pl-controls button:hover { color: #fff; }
  .dv2-pl-controls button.on { color: #7c6cf5; }
  .dv2-pl-play { width: 44px; height: 44px; border-radius: 50%; background: #fff !important; color: #0a0a0e !important; align-items: center; justify-content: center; transition: transform .15s; }
  .dv2-pl-play:hover { transform: scale(1.05); }
  .dv2-pl-timeline { width: 100%; display: flex; align-items: center; gap: 10px; }
  .dv2-pl-timeline span { font-size: 11px; color: #8a8a96; font-variant-numeric: tabular-nums; min-width: 30px; }
  .dv2-pl-timeline input[type="range"] { flex: 1; appearance: none; -webkit-appearance: none; height: 5px; border-radius: 4px; background: linear-gradient(90deg, #7c6cf5 var(--progress, 0%), rgba(255,255,255,.12) var(--progress, 0%)); outline: none; cursor: pointer; }
  .dv2-pl-timeline input[type="range"]::-webkit-slider-thumb { appearance: none; -webkit-appearance: none; width: 12px; height: 12px; border-radius: 50%; background: #fff; opacity: 0; transition: opacity .15s; }
  .dv2-pl-timeline input[type="range"]:hover::-webkit-slider-thumb { opacity: 1; }
  .dv2-pl-right { width: auto; min-width: 0; display: flex; align-items: center; justify-content: flex-end; gap: 10px; }
  .dv2-pl-right button { border: 0; background: none; color: #8a8a96; cursor: pointer; padding: 5px; display: inline-flex; }
  .dv2-pl-right button:hover { color: #fff; }
  .dv2-vol-ic { color: #8a8a96; }
  #dv2-volume { width: 90px; appearance: none; -webkit-appearance: none; height: 5px; border-radius: 4px; background: rgba(255,255,255,.16); outline: none; cursor: pointer; }
  #dv2-volume::-webkit-slider-thumb { appearance: none; -webkit-appearance: none; width: 11px; height: 11px; border-radius: 50%; background: #c4c4d0; }
}

/* DESIGN V2 (5/6): экран «Стихи» — шапка страницы, контролы, фильтр-поповер */
@media (min-width: 901px) {
  .dv2-page-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; margin-bottom: 22px; }
  .dv2-page-title { font-family: "Spectral", Georgia, serif; font-weight: 500; font-size: 44px; letter-spacing: -.01em; color: #f6f6f9; margin: 0 0 10px; }
  .dv2-page-sub { font-size: 15px; line-height: 1.55; color: #9a9aa8; max-width: 640px; margin: 0; }
  .dv2-page-head .dv2-cta-secondary { flex: 0 0 auto; margin-top: 14px; }
  .dv2-poems-controls { position: sticky; top: -26px; z-index: 20; display: flex; flex-wrap: wrap; align-items: center; gap: 14px; margin: 20px -26px 0; padding: 14px 26px; background: rgba(10,10,14,.82); backdrop-filter: blur(12px); border-bottom: 1px solid rgba(255,255,255,.06); }
  .dv2-ctrl-label { font-size: 13px; color: #7a7a86; }
  .dv2-ctrl-spacer { flex: 1; }
  .dv2-seg { display: inline-flex; background: #121219; border: 1px solid rgba(255,255,255,.08); border-radius: 12px; padding: 3px; gap: 2px; }
  .dv2-seg button { border: 0; background: none; color: #a6a6b2; font-size: 13.5px; font-weight: 500; font-family: inherit; padding: 7px 14px; border-radius: 9px; cursor: pointer; display: inline-flex; align-items: center; gap: 6px; }
  .dv2-seg button:hover { color: #f0f0f4; }
  .dv2-seg button.active { background: #7c6cf5; color: #fff; font-weight: 600; }
  .dv2-filter-wrap { position: relative; }
  .dv2-filter-btn { display: inline-flex; align-items: center; gap: 10px; padding: 6px 14px; border-radius: 12px; border: 1px solid rgba(255,255,255,.08); background: #121219; color: #a6a6b2; cursor: pointer; font-family: inherit; }
  .dv2-filter-btn:hover { border-color: rgba(255,255,255,.18); color: #e8e8ee; }
  .dv2-filter-btn.active { background: rgba(124,108,245,.14); border-color: rgba(124,108,245,.45); color: #e8e8ee; }
  .dv2-filter-btn.active .dv2-ic:first-child { color: #a99cff; }
  .dv2-filter-btn.active .dv2-filter-btn-main i { color: #a99cff; }
  .dv2-filter-chev { transition: transform .15s; }
  .dv2-filter-btn.open .dv2-filter-chev { transform: rotate(180deg); }
  .dv2-filter-btn-main { display: flex; flex-direction: column; align-items: flex-start; }
  .dv2-filter-btn-main b { font-size: 13.5px; font-weight: 600; color: #e8e8ee; }
  .dv2-filter-btn-main i { font-style: normal; font-size: 11.5px; color: #7a7a86; }
  .dv2-filter-pop { position: absolute; top: calc(100% + 10px); left: 0; z-index: 40; width: 560px; max-width: 72vw; background: #101017; border: 1px solid rgba(255,255,255,.1); border-radius: 18px; padding: 18px; box-shadow: 0 24px 60px rgba(0,0,0,.55); }
  .dv2-filter-pop-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; }
  .dv2-filter-pop-head b { font-size: 16px; font-weight: 600; color: #f2f2f6; }
  .dv2-filter-pop-head button { border: 0; background: none; color: #a99cff; font-size: 13px; cursor: pointer; font-family: inherit; }
  .dv2-filter-switch { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border: 1px solid rgba(255,255,255,.08); border-radius: 12px; background: #121219; color: #e8e8ee; font-size: 14px; cursor: pointer; }
  .dv2-filter-switch input { display: none; }
  .dv2-filter-switch i { margin-left: auto; width: 40px; height: 22px; border-radius: 999px; background: #26262f; position: relative; transition: background .15s; flex: 0 0 40px; }
  .dv2-filter-switch i::after { content: ""; position: absolute; top: 3px; left: 3px; width: 16px; height: 16px; border-radius: 50%; background: #fff; transition: left .15s; }
  .dv2-filter-switch input:checked + i { background: #7c6cf5; }
  .dv2-filter-switch input:checked + i::after { left: 21px; }
  .dv2-filter-group { font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: #585863; margin: 16px 0 8px; }
  .dv2-filter-chips { display: flex; flex-wrap: wrap; gap: 8px; }
  .dv2-filter-chips .dv2-chip { cursor: pointer; border: 1px solid rgba(255,255,255,.08); background: #121219; font-family: inherit; font-size: 13px; }
  .dv2-filter-chips .dv2-chip.active { border-color: rgba(124,108,245,.45); background: rgba(124,108,245,.14); color: #e7e4ff; }
  .dv2-filter-show { width: 100%; margin-top: 18px; padding: 13px; border: 0; border-radius: 12px; background: #7c6cf5; color: #fff; font-weight: 600; font-size: 14.5px; cursor: pointer; font-family: inherit; }
  .dv2-filter-show:hover { filter: brightness(1.07); }
  .dv2-fav-counter { display: inline-flex; align-items: center; gap: 7px; padding: 9px 14px; border-radius: 12px; border: 1px solid rgba(255,255,255,.08); background: #121219; color: #a6a6b2; cursor: pointer; font-family: inherit; }
  .dv2-fav-counter b { font-size: 13.5px; color: #e8e8ee; }
  .dv2-fav-counter.active { border-color: rgba(124,108,245,.55); background: rgba(124,108,245,.14); color: #e7e4ff; }
}

/* DESIGN V2 (6/6): экран «Стихи» — чипы поэтов, результат-бар, карточки/строки */
@media (min-width: 901px) {
  .dv2-poets-chiprow { padding-top: 4px; }
  .dv2-poets-chiprow .dv2-chip { cursor: pointer; font-family: inherit; border: 1px solid rgba(255,255,255,.08); background: #121219; }
  .dv2-poets-chiprow .dv2-chip.active { border-color: rgba(124,108,245,.45); background: rgba(124,108,245,.14); color: #e7e4ff; font-weight: 600; }
  .dv2-poems-resultbar { display: flex; align-items: center; justify-content: space-between; margin: 20px 0 16px; }
  .dv2-poems-resultbar > span:first-child { font-size: 15px; font-weight: 600; color: #f2f2f6; }
  .dv2-sortwrap { display: inline-flex; align-items: center; gap: 10px; }
  .dv2-poems-grid-page { grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); margin-bottom: 30px; }
  .dv2-pcard-top { display: flex; align-items: flex-start; gap: 12px; }
  .dv2-pcard-mono { flex: 0 0 46px; }
  .dv2-pcard-titlewrap { min-width: 0; flex: 1; text-decoration: none; display: flex; flex-direction: column; }
  .dv2-pcard-titlewrap b { font-size: 15.5px; font-weight: 600; color: #f2f2f6; line-height: 1.25; }
  .dv2-pcard-titlewrap b:hover { color: #fff; text-decoration: underline; text-decoration-color: rgba(255,255,255,.3); }
  .dv2-pcard-titlewrap i { font-style: normal; font-size: 12.5px; font-weight: 500; margin-top: 3px; }
  .dv2-pcard-year { font-size: 12px; color: #63636f; white-space: nowrap; }
  .dv2-pcard-meta { min-height: 20px; display: flex; align-items: center; gap: 8px; }
  .dv2-en-badge { display: inline-flex; padding: 2px 7px; border: 1px solid rgba(255,255,255,.16); border-radius: 6px; font-size: 10.5px; font-weight: 600; letter-spacing: .06em; color: #9a9aa8; }
  .dv2-pcard-play { width: 44px; height: 44px; flex: 0 0 44px; border: 0; border-radius: 10px; background: #7c6cf5; color: #fff; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; }
  .dv2-pcard-play:hover { filter: brightness(1.1); }
  .dv2-pcard-fav { width: 44px; height: 44px; flex: 0 0 44px; border: 1px solid rgba(255,255,255,.1); border-radius: 10px; background: none; color: #8a8a96; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; }
  .dv2-pcard-fav:hover { color: #e8e8ee; border-color: rgba(255,255,255,.2); }
  .dv2-pcard-fav.on { color: var(--accent); border-color: rgba(255,138,61,.45); background: rgba(255,138,61,.12); } /* избранное = оранжевая закладка (как мини-апп) */
  .dv2-poems-rows { display: flex; flex-direction: column; gap: 2px; margin-bottom: 30px; }
  .dv2-poemrow { display: flex; align-items: center; gap: 13px; padding: 9px 10px; border-radius: 10px; }
  .dv2-poemrow:hover { background: #15151d; }
  .dv2-poemrow-mono { width: 40px; height: 40px; flex: 0 0 40px; border-radius: 10px; font-size: 13px; display: inline-flex; align-items: center; justify-content: center; font-weight: 700; }
  .dv2-poemrow-main { min-width: 0; flex: 1; text-decoration: none; display: flex; flex-direction: column; }
  .dv2-poemrow-main b { font-size: 14px; font-weight: 600; color: #f2f2f6; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .dv2-poemrow-main i { font-style: normal; font-size: 12px; color: #82828f; }
  .dv2-poemrow-make { display: inline-flex; align-items: center; gap: 6px; padding: 8px 13px; border-radius: 9px; background: rgba(124,108,245,.16); color: #c9c1ff; font-weight: 600; font-size: 12.5px; text-decoration: none; }
  .dv2-poemrow .dv2-pcard-play, .dv2-poemrow .dv2-pcard-fav { width: 36px; height: 36px; flex: 0 0 36px; }
  .dv2-poems-empty { padding: 40px 0; color: #82828f; font-size: 14.5px; }
}

