/* === БАЗОВИЙ СТИЛЬ ДЛЯ ВСІХ ФАЙЛОВИХ ЛІНКІВ === */
a[href$=".pdf"],
a[href$=".doc"], a[href$=".docx"], a[href$=".rtf"], a[href$=".odt"],
a[href$=".xls"], a[href$=".xlsx"], a[href$=".csv"], a[href$=".tsv"], a[href$=".dat"], a[href$=".ods"], a[href$=".xml"],
a[href$=".ppt"], a[href$=".pptx"],
a[href$=".mp3"], a[href$=".wav"], a[href$=".ogg"], a[href$=".flac"],
a[href$=".mov"], a[href$=".avi"], a[href$=".mp4"], a[href$=".mkv"],
a[href$=".rar"], a[href$=".zip"], a[href$=".7z"], a[href$=".tar"], a[href$=".gz"],
a[href$=".ai"], a[href$=".eps"], a[href$=".psd"], a[href$=".ae"],
a[href$=".txt"], a[href$=".log"], a[href$=".md"] {
  position: relative;
  padding-left: 55px; /* 15px left + 28px icon + відстань */
  display: inline-block;
  color: inherit;
  text-decoration: none;
}

/* === ЗАГАЛЬНИЙ ПСЕВДОЕЛЕМЕНТ === */
a[href$=".pdf"]::before,
a[href$=".doc"]::before, a[href$=".docx"]::before, a[href$=".rtf"]::before, a[href$=".odt"]::before,
a[href$=".xls"]::before, a[href$=".xlsx"]::before, a[href$=".csv"]::before, a[href$=".tsv"]::before, a[href$=".dat"]::before, a[href$=".ods"]::before, a[href$=".xml"]::before,
a[href$=".ppt"]::before, a[href$=".pptx"]::before,
a[href$=".mp3"]::before, a[href$=".wav"]::before, a[href$=".ogg"]::before, a[href$=".flac"]::before,
a[href$=".mov"]::before, a[href$=".avi"]::before, a[href$=".mp4"]::before, a[href$=".mkv"]::before,
a[href$=".rar"]::before, a[href$=".zip"]::before, a[href$=".7z"]::before, a[href$=".tar"]::before, a[href$=".gz"]::before,
a[href$=".ai"]::before, a[href$=".eps"]::before, a[href$=".psd"]::before, a[href$=".ae"]::before,
a[href$=".txt"]::before, a[href$=".log"]::before, a[href$=".md"]::before {
  content: "";
  position: absolute;
  left: 15px;
  top: 50%;
  width: 28px;
  height: 28px;
  transform: translateY(-50%);
  background-size: contain;
  background-repeat: no-repeat;
}

/* === ІКОНКИ ЗА РОЗШИРЕННЯМ === */

/* PDF */
a[href$=".pdf"]::before {
  background-image: url('../css/file-icons/file-pdf.svg');
}

/* WORD */
a[href$=".doc"]::before, a[href$=".docx"]::before, a[href$=".rtf"]::before, a[href$=".odt"]::before {
  background-image: url('../css/file-icons/file-word.svg');
}

/* EXCEL */
a[href$=".xls"]::before, a[href$=".xlsx"]::before,
a[href$=".csv"]::before, a[href$=".tsv"]::before, a[href$=".dat"]::before, a[href$=".ods"]::before, a[href$=".xml"]::before {
  background-image: url('../css/file-icons/file-excel.svg');
}

/* POWERPOINT */
a[href$=".ppt"]::before, a[href$=".pptx"]::before {
  background-image: url('../css/file-icons/file-ppt.svg');
}

/* AUDIO */
a[href$=".mp3"]::before, a[href$=".wav"]::before, a[href$=".ogg"]::before, a[href$=".flac"]::before {
  background-image: url('../css/file-icons/file-mp3.svg');
}

/* VIDEO: MOV */
a[href$=".mov"]::before {
  background-image: url('../css/file-icons/file-mov.svg');
}

/* VIDEO: AVI */
a[href$=".avi"]::before {
  background-image: url('../css/file-icons/file-avi.svg');
}

/* VIDEO: MP4, MKV (використовуй mov для всіх або створи окремі, якщо треба) */
a[href$=".mp4"]::before, a[href$=".mkv"]::before {
  background-image: url('../css/file-icons/file-mov.svg');
}

/* ARCHIVE: RAR */
a[href$=".rar"]::before {
  background-image: url('../css/file-icons/file-rar.svg');
}

/* ARCHIVE: ZIP — окремо */
a[href$=".zip"]::before {
  background-image: url('../css/file-icons/file-zip.svg');
}

/* Інші архіви під rar */
a[href$=".7z"]::before, a[href$=".tar"]::before, a[href$=".gz"]::before {
  background-image: url('../css/file-icons/file-rar.svg');
}

/* DESIGN: AI, EPS, PSD, AE */
a[href$=".ai"]::before {
  background-image: url('../css/file-icons/file-ai.svg');
}

a[href$=".eps"]::before {
  background-image: url('../css/file-icons/file-eps.svg');
}

a[href$=".psd"]::before {
  background-image: url('../css/file-icons/file-psd.svg');
}

a[href$=".ae"]::before {
  background-image: url('../css/file-icons/file-ae.svg');
}

/* TEXT */
a[href$=".txt"]::before, a[href$=".log"]::before, a[href$=".md"]::before {
  background-image: url('../css/file-icons/file-txt.svg');
}

/* === DEFAULT FALLBACK === */
a[href]:not([href$=".pdf"]):not([href$=".doc"]):not([href$=".docx"]):not([href$=".rtf"]):not([href$=".odt"])
:not([href$=".xls"]):not([href$=".xlsx"]):not([href$=".csv"]):not([href$=".tsv"]):not([href$=".dat"]):not([href$=".ods"]):not([href$=".xml"])
:not([href$=".ppt"]):not([href$=".pptx"])
:not([href$=".mp3"]):not([href$=".wav"]):not([href$=".ogg"]):not([href$=".flac"])
:not([href$=".mov"]):not([href$=".avi"]):not([href$=".mp4"]):not([href$=".mkv"])
:not([href$=".rar"]):not([href$=".zip"]):not([href$=".7z"]):not([href$=".tar"]):not([href$=".gz"])
:not([href$=".ai"]):not([href$=".eps"]):not([href$=".psd"]):not([href$=".ae"])
:not([href$=".txt"]):not([href$=".log"]):not([href$=".md"])::before {
  content: "";
  position: absolute;
  left: 15px;
  top: 50%;
  width: 20px;
  height: 20px;
  transform: translateY(-50%);
  background: url('../css/file-icons/file-default.svg') no-repeat center/contain;
}

/* === ОБГОРТКА === */
a.file-link {
  display: inline-flex;
  flex-direction: column; /* тепер вертикально! */
  gap: 8px; /* відстань між заголовком і низом */
  border: 1px solid #ddd;
  border-radius: 12px;
  padding-top: 20px;
  padding-bottom: 20px;
  text-decoration: none;
  color: inherit;
  max-width: 100%;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

a.file-link:hover {
  border-color: #999;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}

/* === Заголовок === */
a.file-link .file-title {
  font-weight: 600;
  line-height: 1.4;
  padding-right: 15px;
}

/* === Нижній рядок === */
a.file-link .file-bottom {
  display: flex;
  align-items: center;
  width: 100%;
}

/* === Розмір файлу === */
a.file-link .file-meta {
  font-size: 0.85em;
  color: #777;
  padding-right: 15px;
}

/* === Іконка завантаження === */
.icon-download {
  display: inline-block;
  width: 20px;
  height: 20px;
  background: url('../css/file-icons/icon-download.svg') no-repeat center/contain;
  transition: filter 0.2s ease;
}

a.file-link:hover .icon-download {
  filter: brightness(0.7);
}