/* Shared task navigation for the review copy. */
.nav-dropdown-menu::before { content: ''; position: absolute; height: 16px; left: 0; right: 0; bottom: 100%; }
.nav-dropdown.is-open .nav-dropdown-menu { opacity: 1; visibility: visible; transform: translateY(0); }
.nav-dropdown.is-open .nav-dropdown-toggle svg { transform: rotate(180deg); }
.task-dropdown .nav-dropdown-menu { width: 340px; max-height: calc(100vh - 100px); overflow-y: auto; padding: 10px; }
.task-dropdown .nav-dropdown-menu a { padding: 10px 14px; font-size: 14px; letter-spacing: 0; text-transform: none; line-height: 1.35; }
.task-dropdown small, .task-mobile small { display: block; color: #a1afb9; font-size: 11px; letter-spacing: .035em; margin-top: 4px; }
.task-mobile a { text-transform: none; letter-spacing: 0; }
.mobile-menu:not(.open) { visibility: hidden; }
.mobile-menu.open { visibility: visible; }
a:focus-visible, button:focus-visible { outline: 2px solid #5aadad; outline-offset: 5px; }
@media (min-width: 901px) and (max-width: 1200px) { .nav-links { gap: 20px; } .nav-links a, .nav-dropdown-toggle { letter-spacing: .10em; font-size: 12px; } }
.nav-dropdown:not(.is-open) .nav-dropdown-menu { opacity: 0; visibility: hidden; transform: translateY(-6px); }
.nav-dropdown:not(.is-open) .nav-dropdown-toggle svg { transform: none; }
@media (max-width: 900px) { nav { z-index: 302; } .mobile-menu { width: min(340px, 90vw); } }
