/* Shared SVG and CSS-drawn icon geometry. Contextual sizing belongs here so
   action and navigation icons have one visual owner. */
.action-icon {
  width: 13px;
  height: 13px;
  display: block;
  flex-shrink: 0;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.account-action-icon {
  width: 15px;
  height: 15px;
  display: block;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.3;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.nav-item-icon {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

@media (max-width: 1024px) {
  .mobile-save-btn .action-icon { width: 13px; height: 13px; }
  .mobile-drawer-actions .action-icon { width: 12px; height: 12px; }

  .hamburger-icon {
    width: 18px;
    display: inline-flex;
    flex-direction: column;
    gap: 4px;
    flex-shrink: 0;
  }
  .hamburger-icon span {
    display: block;
    height: 2px;
    border-radius: 2px;
    background: var(--navy);
  }
  .mobile-drawer-btn .hamburger-icon span { background: currentColor; }

  .nav-section-chevron {
    flex-shrink: 0;
    width: 16px;
    height: 16px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    color: var(--color-text-muted);
    transform: rotate(-90deg);
    transition: transform 180ms ease;
  }
  .nav-section[open] > .nav-section-summary .nav-section-chevron {
    transform: rotate(90deg);
  }

  .mobile-drawer-close svg {
    width: 15px;
    height: 15px;
    display: block;
    fill: none;
    stroke: currentColor;
    stroke-width: 2.2;
    stroke-linecap: round;
  }

  @media (prefers-reduced-motion: reduce) {
    .nav-section-chevron { transition: none; }
  }
}
