.shs-downloads-directory {
  --shs-ink: #102b2c;
  --shs-teal: #075b5d;
  --shs-teal-2: #0b7774;
  --shs-soft: #eef7f5;
  --shs-line: rgba(16,43,44,.14);
  --shs-muted: #586a6a;
  margin: clamp(1.5rem,3vw,2.75rem) 0;
}
.shs-downloads-list { display: grid; gap: .9rem; }
.shs-download-card {
  display: grid;
  grid-template-columns: 68px minmax(0,1fr) auto;
  align-items: center;
  gap: 1.1rem;
  padding: 1.15rem 1.2rem;
  border: 1px solid var(--shs-line);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(13,29,32,.055);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.shs-download-card:hover {
  transform: translateY(-2px);
  border-color: rgba(7,91,93,.28);
  box-shadow: 0 14px 32px rgba(13,29,32,.09);
}
.shs-download-filetype {
  width: 58px;
  height: 64px;
  display: grid;
  place-items: center;
  border-radius: 13px;
  background: linear-gradient(145deg,var(--shs-teal),var(--shs-teal-2));
  color: #fff;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.16);
}
.shs-download-filetype span { font-size: .7rem; font-weight: 800; letter-spacing: .07em; }
.shs-download-copy { min-width: 0; }
.shs-download-copy h3 { margin: 0; color: var(--shs-ink); font-size: clamp(1.02rem,2vw,1.18rem); line-height: 1.3; }
.shs-download-copy p { margin: .38rem 0 0; color: var(--shs-muted); font-size: .94rem; line-height: 1.55; }
.shs-download-action { justify-self: end; }
.shs-download-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .55rem;
  min-height: 44px;
  padding: .68rem 1rem;
  border-radius: 999px;
  background: var(--shs-teal);
  color: #fff !important;
  text-decoration: none !important;
  font-size: .9rem;
  font-weight: 700;
  white-space: nowrap;
  transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
}
.shs-download-button:hover, .shs-download-button:focus-visible {
  background: var(--shs-teal-2);
  transform: translateY(-1px);
  box-shadow: 0 8px 18px rgba(7,91,93,.2);
}
.shs-download-button.is-disabled { background: #dfe7e6; color: #657372 !important; cursor: default; box-shadow: none; }
.shs-downloads-empty { padding: 1.4rem; border-radius: 16px; background: var(--shs-soft); color: var(--shs-ink); }
.shs-downloads-empty p { margin: .35rem 0 0; }
@media (max-width: 720px) {
  .shs-download-card { grid-template-columns: 52px minmax(0,1fr); gap: .9rem; padding: 1rem; }
  .shs-download-filetype { width: 50px; height: 56px; border-radius: 11px; }
  .shs-download-action { grid-column: 1 / -1; justify-self: stretch; }
  .shs-download-button { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .shs-download-card, .shs-download-button { transition: none; }
  .shs-download-card:hover, .shs-download-button:hover { transform: none; }
}
