/* ===== Reusable components: dropdown, mobile drawer (Side menu) ===== */

/* Dropdown ("Список" #108:1063) */
.dropdown { position: relative; }
.dropdown__trigger { font: inherit; font-size: var(--fs-sm); color: var(--ink-2);
  background: none; border: 0; cursor: pointer; padding: 8px 4px; }
.dropdown__menu {
  position: absolute; right: 0; top: calc(100% + 10px); min-width: 220px;
  background: #fff; border-radius: var(--r-md); box-shadow: 3px 6px 20px rgba(0,0,0,.18);
  padding: 12px; display: none; flex-direction: column; gap: 4px; z-index: 60;
}
.dropdown.is-open .dropdown__menu { display: flex; }
.dropdown__menu a { padding: 11px 14px; border-radius: 12px; font-size: var(--fs-sm); color: var(--ink-2); }
.dropdown__menu a:hover { background: var(--bg-2); color: var(--brand); }

/* Hamburger */
.nav-toggle { display: none; flex-direction: column; gap: 5px; background: none; border: 0;
  cursor: pointer; padding: 8px; margin-left: 8px; }
.nav-toggle span { width: 24px; height: 2px; background: var(--ink); border-radius: 2px; }

/* Drawer */
.drawer { position: fixed; inset: 0; background: rgba(0,0,0,.4); z-index: 100;
  opacity: 0; visibility: hidden; transition: .2s; }
.drawer.is-open { opacity: 1; visibility: visible; }
.drawer__panel {
  position: absolute; top: 0; right: 0; bottom: 0; width: 300px; max-width: 84vw;
  background: #fff; padding: 28px 24px; display: flex; flex-direction: column; gap: 28px;
  transform: translateX(100%); transition: transform .25s ease; border-radius: 30px 0 0 30px;
}
.drawer.is-open .drawer__panel { transform: translateX(0); }
.drawer__close { align-self: flex-end; background: none; border: 0; font-size: 30px; line-height: 1;
  color: var(--ink); cursor: pointer; }
.drawer__nav { display: flex; flex-direction: column; gap: 18px; }
.drawer__nav a { font-size: 18px; color: var(--ink-2); }
.drawer__nav a:hover { color: var(--brand); }
.drawer__actions { display: flex; flex-direction: column; gap: 12px; margin-top: auto; }

@media (max-width: 900px) {
  .nav-toggle { display: flex; }
  .header-actions { display: none; }
}
